Karsten Hopp ec0d34
To: vim_dev@googlegroups.com
Karsten Hopp ec0d34
Subject: Patch 7.3.506
Karsten Hopp ec0d34
Fcc: outbox
Karsten Hopp ec0d34
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp ec0d34
Mime-Version: 1.0
Karsten Hopp ec0d34
Content-Type: text/plain; charset=UTF-8
Karsten Hopp ec0d34
Content-Transfer-Encoding: 8bit
Karsten Hopp ec0d34
------------
Karsten Hopp ec0d34
Karsten Hopp ec0d34
Patch 7.3.506
Karsten Hopp ec0d34
Problem:    GTK gives an error when selecting a non-existent file.
Karsten Hopp ec0d34
Solution:   Add a handler to avoid the error. (Christian Brabandt)
Karsten Hopp ec0d34
Files:	    src/gui_gtk.c
Karsten Hopp ec0d34
Karsten Hopp ec0d34
Karsten Hopp ec0d34
*** ../vim-7.3.505/src/gui_gtk.c	2011-06-26 04:48:56.000000000 +0200
Karsten Hopp ec0d34
--- src/gui_gtk.c	2012-04-25 17:08:58.000000000 +0200
Karsten Hopp ec0d34
***************
Karsten Hopp ec0d34
*** 90,95 ****
Karsten Hopp ec0d34
--- 90,100 ----
Karsten Hopp ec0d34
  static void entry_activate_cb(GtkWidget *widget, gpointer data);
Karsten Hopp ec0d34
  static void entry_changed_cb(GtkWidget *entry, GtkWidget *dialog);
Karsten Hopp ec0d34
  static void find_replace_cb(GtkWidget *widget, gpointer data);
Karsten Hopp ec0d34
+ static void recent_func_log_func(
Karsten Hopp ec0d34
+ 	const gchar *log_domain,
Karsten Hopp ec0d34
+ 	GLogLevelFlags log_level,
Karsten Hopp ec0d34
+ 	const gchar *message,
Karsten Hopp ec0d34
+ 	gpointer user_data);
Karsten Hopp ec0d34
  
Karsten Hopp ec0d34
  #if defined(FEAT_TOOLBAR)
Karsten Hopp ec0d34
  /*
Karsten Hopp ec0d34
***************
Karsten Hopp ec0d34
*** 839,844 ****
Karsten Hopp ec0d34
--- 844,851 ----
Karsten Hopp ec0d34
      GtkWidget		*fc;
Karsten Hopp ec0d34
  #endif
Karsten Hopp ec0d34
      char_u		dirbuf[MAXPATHL];
Karsten Hopp ec0d34
+     guint		log_handler;
Karsten Hopp ec0d34
+     const gchar		*domain = "Gtk";
Karsten Hopp ec0d34
  
Karsten Hopp ec0d34
      title = CONVERT_TO_UTF8(title);
Karsten Hopp ec0d34
  
Karsten Hopp ec0d34
***************
Karsten Hopp ec0d34
*** 853,858 ****
Karsten Hopp ec0d34
--- 860,870 ----
Karsten Hopp ec0d34
      /* If our pointer is currently hidden, then we should show it. */
Karsten Hopp ec0d34
      gui_mch_mousehide(FALSE);
Karsten Hopp ec0d34
  
Karsten Hopp ec0d34
+     /* Hack: The GTK file dialog warns when it can't access a new file, this
Karsten Hopp ec0d34
+      * makes it shut up. http://bugzilla.gnome.org/show_bug.cgi?id=664587 */
Karsten Hopp ec0d34
+     log_handler = g_log_set_handler(domain, G_LOG_LEVEL_WARNING,
Karsten Hopp ec0d34
+ 						  recent_func_log_func, NULL);
Karsten Hopp ec0d34
+ 
Karsten Hopp ec0d34
  #ifdef USE_FILE_CHOOSER
Karsten Hopp ec0d34
      /* We create the dialog each time, so that the button text can be "Open"
Karsten Hopp ec0d34
       * or "Save" according to the action. */
Karsten Hopp ec0d34
***************
Karsten Hopp ec0d34
*** 916,921 ****
Karsten Hopp ec0d34
--- 928,934 ----
Karsten Hopp ec0d34
      gtk_widget_show(gui.filedlg);
Karsten Hopp ec0d34
      gtk_main();
Karsten Hopp ec0d34
  #endif
Karsten Hopp ec0d34
+     g_log_remove_handler(domain, log_handler);
Karsten Hopp ec0d34
  
Karsten Hopp ec0d34
      CONVERT_TO_UTF8_FREE(title);
Karsten Hopp ec0d34
      if (gui.browse_fname == NULL)
Karsten Hopp ec0d34
***************
Karsten Hopp ec0d34
*** 1882,1884 ****
Karsten Hopp ec0d34
--- 1895,1908 ----
Karsten Hopp ec0d34
       * backwards compatibility anyway. */
Karsten Hopp ec0d34
      do_cmdline_cmd((char_u *)"emenu ToolBar.FindHelp");
Karsten Hopp ec0d34
  }
Karsten Hopp ec0d34
+ 
Karsten Hopp ec0d34
+     static void
Karsten Hopp ec0d34
+ recent_func_log_func(const gchar *log_domain UNUSED,
Karsten Hopp ec0d34
+ 		     GLogLevelFlags log_level UNUSED,
Karsten Hopp ec0d34
+ 		     const gchar *message UNUSED,
Karsten Hopp ec0d34
+ 		     gpointer user_data UNUSED)
Karsten Hopp ec0d34
+ {
Karsten Hopp ec0d34
+     /* We just want to suppress the warnings. */
Karsten Hopp ec0d34
+     /* http://bugzilla.gnome.org/show_bug.cgi?id=664587 */
Karsten Hopp ec0d34
+ }
Karsten Hopp ec0d34
+ 
Karsten Hopp ec0d34
*** ../vim-7.3.505/src/version.c	2012-04-25 16:50:44.000000000 +0200
Karsten Hopp ec0d34
--- src/version.c	2012-04-25 17:08:28.000000000 +0200
Karsten Hopp ec0d34
***************
Karsten Hopp ec0d34
*** 716,717 ****
Karsten Hopp ec0d34
--- 716,719 ----
Karsten Hopp ec0d34
  {   /* Add new patch number below this line */
Karsten Hopp ec0d34
+ /**/
Karsten Hopp ec0d34
+     506,
Karsten Hopp ec0d34
  /**/
Karsten Hopp ec0d34
Karsten Hopp ec0d34
-- 
Karsten Hopp ec0d34
Compilation process failed successfully.
Karsten Hopp ec0d34
Karsten Hopp ec0d34
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp ec0d34
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp ec0d34
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp ec0d34
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///