]> code.delx.au - gnu-emacs/blobdiff - src/w32term.c
src/w32*.c: Make functions static.
[gnu-emacs] / src / w32term.c
index 947ed5c9d4409097d445d6248fee9510b98ff341..a082aa32b691f673b0b4e96fd0567e311dac2c45 100644 (file)
@@ -21,7 +21,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <config.h>
 #include <signal.h>
 #include <stdio.h>
-#include <stdlib.h>
 #include <setjmp.h>
 #include "lisp.h"
 #include "blockinput.h"
@@ -3955,7 +3954,7 @@ static char dbcs_lead = 0;
    recursively with different messages by the system.
 */
 
-int
+static int
 w32_read_socket (struct terminal *terminal, int expected,
                 struct input_event *hold_quit)
 {
@@ -4897,6 +4896,11 @@ x_draw_bar_cursor (struct window *w, struct glyph_row *row,
 
          w->phys_cursor_width = width;
 
+         /* If the character under cursor is R2L, draw the bar cursor
+            on the right of its glyph, rather than on the left.  */
+         if ((cursor_glyph->resolved_level & 1) != 0)
+           x += cursor_glyph->pixel_width - width;
+
          w32_fill_area (f, hdc, cursor_color, x,
                         WINDOW_TO_FRAME_PIXEL_Y (w, w->phys_cursor.y),
                         width, row->height);