diff options
Diffstat (limited to 'src/process.c')
| -rw-r--r-- | src/process.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/process.c b/src/process.c index 92d5e692d0b..7ab651a2376 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -5556,19 +5556,19 @@ it is sent in several bunches. This may happen even for shorter regions. | |||
| 5556 | Output from processes can arrive in between bunches. */) | 5556 | Output from processes can arrive in between bunches. */) |
| 5557 | (Lisp_Object process, Lisp_Object start, Lisp_Object end) | 5557 | (Lisp_Object process, Lisp_Object start, Lisp_Object end) |
| 5558 | { | 5558 | { |
| 5559 | Lisp_Object proc; | 5559 | Lisp_Object proc = get_process (process); |
| 5560 | ptrdiff_t start1, end1; | 5560 | ptrdiff_t start_byte, end_byte; |
| 5561 | 5561 | ||
| 5562 | proc = get_process (process); | ||
| 5563 | validate_region (&start, &end); | 5562 | validate_region (&start, &end); |
| 5564 | 5563 | ||
| 5564 | start_byte = CHAR_TO_BYTE (XINT (start)); | ||
| 5565 | end_byte = CHAR_TO_BYTE (XINT (end)); | ||
| 5566 | |||
| 5565 | if (XINT (start) < GPT && XINT (end) > GPT) | 5567 | if (XINT (start) < GPT && XINT (end) > GPT) |
| 5566 | move_gap (XINT (start)); | 5568 | move_gap_both (XINT (start), start_byte); |
| 5567 | 5569 | ||
| 5568 | start1 = CHAR_TO_BYTE (XINT (start)); | 5570 | send_process (proc, (char *) BYTE_POS_ADDR (start_byte), |
| 5569 | end1 = CHAR_TO_BYTE (XINT (end)); | 5571 | end_byte - start_byte, Fcurrent_buffer ()); |
| 5570 | send_process (proc, (char *) BYTE_POS_ADDR (start1), end1 - start1, | ||
| 5571 | Fcurrent_buffer ()); | ||
| 5572 | 5572 | ||
| 5573 | return Qnil; | 5573 | return Qnil; |
| 5574 | } | 5574 | } |