Karsten Hopp be0e49
To: vim_dev@googlegroups.com
Karsten Hopp be0e49
Subject: Patch 7.3.865
Karsten Hopp be0e49
Fcc: outbox
Karsten Hopp be0e49
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp be0e49
Mime-Version: 1.0
Karsten Hopp be0e49
Content-Type: text/plain; charset=UTF-8
Karsten Hopp be0e49
Content-Transfer-Encoding: 8bit
Karsten Hopp be0e49
------------
Karsten Hopp be0e49
Karsten Hopp be0e49
Patch 7.3.865 (after 7.3.862)
Karsten Hopp be0e49
Problem:    Mouse position may be wrong.
Karsten Hopp be0e49
Solution:   Let vungetc() restore the mouse position.
Karsten Hopp be0e49
Files:      src/getchar.c
Karsten Hopp be0e49
Karsten Hopp be0e49
Karsten Hopp be0e49
*** ../vim-7.3.864/src/getchar.c	2012-06-06 12:06:10.000000000 +0200
Karsten Hopp be0e49
--- src/getchar.c	2013-03-16 21:41:02.000000000 +0100
Karsten Hopp be0e49
***************
Karsten Hopp be0e49
*** 1337,1342 ****
Karsten Hopp be0e49
--- 1337,1346 ----
Karsten Hopp be0e49
  
Karsten Hopp be0e49
  static int old_char = -1;	/* character put back by vungetc() */
Karsten Hopp be0e49
  static int old_mod_mask;	/* mod_mask for ungotten character */
Karsten Hopp be0e49
+ #ifdef FEAT_MOUSE
Karsten Hopp be0e49
+ static int old_mouse_row;	/* mouse_row related to old_char */
Karsten Hopp be0e49
+ static int old_mouse_col;	/* mouse_col related to old_char */
Karsten Hopp be0e49
+ #endif
Karsten Hopp be0e49
  
Karsten Hopp be0e49
  #if defined(FEAT_EVAL) || defined(FEAT_EX_EXTRA) || defined(PROTO)
Karsten Hopp be0e49
  
Karsten Hopp be0e49
***************
Karsten Hopp be0e49
*** 1567,1572 ****
Karsten Hopp be0e49
--- 1571,1580 ----
Karsten Hopp be0e49
  	c = old_char;
Karsten Hopp be0e49
  	old_char = -1;
Karsten Hopp be0e49
  	mod_mask = old_mod_mask;
Karsten Hopp be0e49
+ #ifdef FEAT_MOUSE
Karsten Hopp be0e49
+ 	mouse_row = old_mouse_row;
Karsten Hopp be0e49
+ 	mouse_col = old_mouse_col;
Karsten Hopp be0e49
+ #endif
Karsten Hopp be0e49
      }
Karsten Hopp be0e49
      else
Karsten Hopp be0e49
      {
Karsten Hopp be0e49
***************
Karsten Hopp be0e49
*** 1877,1882 ****
Karsten Hopp be0e49
--- 1885,1894 ----
Karsten Hopp be0e49
  {
Karsten Hopp be0e49
      old_char = c;
Karsten Hopp be0e49
      old_mod_mask = mod_mask;
Karsten Hopp be0e49
+ #ifdef FEAT_MOUSE
Karsten Hopp be0e49
+     old_mouse_row = mouse_row;
Karsten Hopp be0e49
+     old_mouse_col = mouse_col;
Karsten Hopp be0e49
+ #endif
Karsten Hopp be0e49
  }
Karsten Hopp be0e49
  
Karsten Hopp be0e49
  /*
Karsten Hopp be0e49
*** ../vim-7.3.864/src/version.c	2013-03-16 21:35:28.000000000 +0100
Karsten Hopp be0e49
--- src/version.c	2013-03-16 21:38:44.000000000 +0100
Karsten Hopp be0e49
***************
Karsten Hopp be0e49
*** 730,731 ****
Karsten Hopp be0e49
--- 730,733 ----
Karsten Hopp be0e49
  {   /* Add new patch number below this line */
Karsten Hopp be0e49
+ /**/
Karsten Hopp be0e49
+     865,
Karsten Hopp be0e49
  /**/
Karsten Hopp be0e49
Karsten Hopp be0e49
-- 
Karsten Hopp be0e49
Creating the world with Emacs:   M-x let-there-be-light
Karsten Hopp be0e49
Creating the world with Vim:     :make world
Karsten Hopp be0e49
Karsten Hopp be0e49
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp be0e49
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp be0e49
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp be0e49
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///