1 | --- widget.c.origin 2009-06-15 00:55:42.000000000 +0400 |
---|
2 | +++ widget.c 2009-06-15 01:57:31.000000000 +0400 |
---|
3 | @@ -1415,13 +1415,14 @@ |
---|
4 | int last = max (x_first, x_last); |
---|
5 | size_t len; |
---|
6 | |
---|
7 | + if (in->mark > first) |
---|
8 | + in->mark = first; |
---|
9 | in->point = first; |
---|
10 | - in->mark = first; |
---|
11 | - last = str_offset_to_pos (in->buffer, last); |
---|
12 | - first = str_offset_to_pos (in->buffer, first); |
---|
13 | - len = strlen (&in->buffer[last]) + 1; |
---|
14 | - memmove (&in->buffer[first], &in->buffer[last], len); |
---|
15 | - in->charpoint = 0; |
---|
16 | + last = str_offset_to_pos (in->buffer, last); |
---|
17 | + first = str_offset_to_pos (in->buffer, first); |
---|
18 | + len = strlen (&in->buffer[last]) + 1; |
---|
19 | + memmove (&in->buffer[first], &in->buffer[last], len); |
---|
20 | + in->charpoint = 0; |
---|
21 | in->need_push = 1; |
---|
22 | } |
---|