Karsten Hopp 7620f6
To: vim-dev@vim.org
Karsten Hopp 7620f6
Subject: Patch 7.1.209
Karsten Hopp 7620f6
Fcc: outbox
Karsten Hopp 7620f6
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp 7620f6
Mime-Version: 1.0
Karsten Hopp 7620f6
Content-Type: text/plain; charset=ISO-8859-1
Karsten Hopp 7620f6
Content-Transfer-Encoding: 8bit
Karsten Hopp 7620f6
------------
Karsten Hopp 7620f6
Karsten Hopp 7620f6
Patch 7.1.209
Karsten Hopp 7620f6
Problem:    GTK: When using the netrw plugin and doing ":gui" Vim hangs.
Karsten Hopp 7620f6
Solution:   Stop getting a selection after three seconds.  This is a hack.
Karsten Hopp 7620f6
Files:	    src/gui_gtk_x11.c
Karsten Hopp 7620f6
Karsten Hopp 7620f6
Karsten Hopp 7620f6
*** ../vim-7.1.208/src/gui_gtk_x11.c	Fri Oct 19 14:32:50 2007
Karsten Hopp 7620f6
--- src/gui_gtk_x11.c	Sun Jan  6 15:15:52 2008
Karsten Hopp 7620f6
***************
Karsten Hopp 7620f6
*** 6660,6665 ****
Karsten Hopp 7620f6
--- 6660,6666 ----
Karsten Hopp 7620f6
      unsigned	i;
Karsten Hopp 7620f6
      int		nbytes;
Karsten Hopp 7620f6
      char_u	*buffer;
Karsten Hopp 7620f6
+     time_t	start;
Karsten Hopp 7620f6
  
Karsten Hopp 7620f6
      for (i = 0; i < N_SELECTION_TARGETS; ++i)
Karsten Hopp 7620f6
      {
Karsten Hopp 7620f6
***************
Karsten Hopp 7620f6
*** 6670,6676 ****
Karsten Hopp 7620f6
  			      cbd->gtk_sel_atom, target,
Karsten Hopp 7620f6
  			      (guint32)GDK_CURRENT_TIME);
Karsten Hopp 7620f6
  
Karsten Hopp 7620f6
! 	while (received_selection == RS_NONE)
Karsten Hopp 7620f6
  	    gtk_main();	/* wait for selection_received_cb */
Karsten Hopp 7620f6
  
Karsten Hopp 7620f6
  	if (received_selection != RS_FAIL)
Karsten Hopp 7620f6
--- 6671,6681 ----
Karsten Hopp 7620f6
  			      cbd->gtk_sel_atom, target,
Karsten Hopp 7620f6
  			      (guint32)GDK_CURRENT_TIME);
Karsten Hopp 7620f6
  
Karsten Hopp 7620f6
! 	/* Hack: Wait up to three seconds for the selection.  A hang was
Karsten Hopp 7620f6
! 	 * noticed here when using the netrw plugin combined with ":gui"
Karsten Hopp 7620f6
! 	 * during the FocusGained event. */
Karsten Hopp 7620f6
! 	start = time(NULL);
Karsten Hopp 7620f6
! 	while (received_selection == RS_NONE && time(NULL) < start + 3)
Karsten Hopp 7620f6
  	    gtk_main();	/* wait for selection_received_cb */
Karsten Hopp 7620f6
  
Karsten Hopp 7620f6
  	if (received_selection != RS_FAIL)
Karsten Hopp 7620f6
*** ../vim-7.1.208/src/version.c	Sat Jan  5 22:15:21 2008
Karsten Hopp 7620f6
--- src/version.c	Sun Jan  6 15:14:48 2008
Karsten Hopp 7620f6
***************
Karsten Hopp 7620f6
*** 668,669 ****
Karsten Hopp 7620f6
--- 668,671 ----
Karsten Hopp 7620f6
  {   /* Add new patch number below this line */
Karsten Hopp 7620f6
+ /**/
Karsten Hopp 7620f6
+     209,
Karsten Hopp 7620f6
  /**/
Karsten Hopp 7620f6
Karsten Hopp 7620f6
-- 
Karsten Hopp 7620f6
BLACK KNIGHT:  I move for no man.
Karsten Hopp 7620f6
ARTHUR:        So be it!
Karsten Hopp 7620f6
    [hah] [parry thrust]
Karsten Hopp 7620f6
    [ARTHUR chops the BLACK KNIGHT's left arm off]
Karsten Hopp 7620f6
ARTHUR:        Now stand aside, worthy adversary.
Karsten Hopp 7620f6
BLACK KNIGHT:  'Tis but a scratch.
Karsten Hopp 7620f6
                                  The Quest for the Holy Grail (Monty Python)
Karsten Hopp 7620f6
Karsten Hopp 7620f6
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp 7620f6
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp 7620f6
\\\        download, build and distribute -- http://www.A-A-P.org        ///
Karsten Hopp 7620f6
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///