SOURCES: 7.2.125 (NEW) - new

adamg adamg at pld-linux.org
Sun Mar 1 02:55:42 CET 2009


Author: adamg                        Date: Sun Mar  1 01:55:42 2009 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- new

---- Files affected:
SOURCES:
   7.2.125 (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/7.2.125
diff -u /dev/null SOURCES/7.2.125:1.1
--- /dev/null	Sun Mar  1 02:55:43 2009
+++ SOURCES/7.2.125	Sun Mar  1 02:55:36 2009
@@ -0,0 +1,161 @@
+To: vim-dev at vim.org
+Subject: Patch 7.2.125
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.125
+Problem:    Leaking memory when reading XPM bitmap for a sign.
+Solution:   Don't allocate the memory twice. (Dominique Pelle)
+Files:      src/gui_x11.c
+
+
+*** ../vim-7.2.124/src/gui_x11.c	Wed Nov 12 13:07:48 2008
+--- src/gui_x11.c	Sun Feb 22 21:58:19 2009
+***************
+*** 1587,1592 ****
+--- 1587,1594 ----
+      XtCloseDisplay(gui.dpy);
+      gui.dpy = NULL;
+      vimShell = (Widget)0;
++     vim_free(gui_argv);
++     gui_argv = NULL;
+  }
+  
+  /*
+***************
+*** 1761,1766 ****
+--- 1763,1770 ----
+       * says that this isn't needed when exiting, so just skip it. */
+      XtCloseDisplay(gui.dpy);
+  #endif
++     vim_free(gui_argv);
++     gui_argv = NULL;
+  }
+  
+  /*
+***************
+*** 3439,3485 ****
+      char_u	    *signfile;
+  {
+      XpmAttributes   attrs;
+!     XImage	    *sign;
+      int		    status;
+  
+      /*
+       * Setup the color substitution table.
+       */
+-     sign = NULL;
+      if (signfile[0] != NUL && signfile[0] != '-')
+      {
+! 	sign = (XImage *)alloc(sizeof(XImage));
+! 	if (sign != NULL)
+  	{
+! 	    XpmColorSymbol color[5] =
+! 	    {
+! 		{"none", NULL, 0},
+! 		{"iconColor1", NULL, 0},
+! 		{"bottomShadowColor", NULL, 0},
+! 		{"topShadowColor", NULL, 0},
+! 		{"selectColor", NULL, 0}
+! 	    };
+! 	    attrs.valuemask = XpmColorSymbols;
+! 	    attrs.numsymbols = 2;
+! 	    attrs.colorsymbols = color;
+! 	    attrs.colorsymbols[0].pixel = gui.back_pixel;
+! 	    attrs.colorsymbols[1].pixel = gui.norm_pixel;
+! 	    status = XpmReadFileToImage(gui.dpy, (char *)signfile,
+  							 &sign, NULL, &attrs);
+! 
+! 	    if (status == 0)
+! 	    {
+! 		/* Sign width is fixed at two columns now.
+! 		if (sign->width > gui.sign_width)
+! 		    gui.sign_width = sign->width + 8; */
+! 	    }
+! 	    else
+! 	    {
+! 		vim_free(sign);
+! 		sign = NULL;
+! 		EMSG(_(e_signdata));
+! 	    }
+  	}
+      }
+  
+      return (void *)sign;
+--- 3443,3479 ----
+      char_u	    *signfile;
+  {
+      XpmAttributes   attrs;
+!     XImage	    *sign = NULL;
+      int		    status;
+  
+      /*
+       * Setup the color substitution table.
+       */
+      if (signfile[0] != NUL && signfile[0] != '-')
+      {
+! 	XpmColorSymbol color[5] =
+  	{
+! 	    {"none", NULL, 0},
+! 	    {"iconColor1", NULL, 0},
+! 	    {"bottomShadowColor", NULL, 0},
+! 	    {"topShadowColor", NULL, 0},
+! 	    {"selectColor", NULL, 0}
+! 	};
+! 	attrs.valuemask = XpmColorSymbols;
+! 	attrs.numsymbols = 2;
+! 	attrs.colorsymbols = color;
+! 	attrs.colorsymbols[0].pixel = gui.back_pixel;
+! 	attrs.colorsymbols[1].pixel = gui.norm_pixel;
+! 	status = XpmReadFileToImage(gui.dpy, (char *)signfile,
+  							 &sign, NULL, &attrs);
+! 	if (status == 0)
+! 	{
+! 	    /* Sign width is fixed at two columns now.
+! 	    if (sign->width > gui.sign_width)
+! 	        gui.sign_width = sign->width + 8; */
+  	}
++ 	else
++ 	    EMSG(_(e_signdata));
+      }
+  
+      return (void *)sign;
+***************
+*** 3489,3496 ****
+  gui_mch_destroy_sign(sign)
+      void *sign;
+  {
+!     XFree(((XImage *)sign)->data);
+!     vim_free(sign);
+  }
+  #endif
+  
+--- 3483,3489 ----
+  gui_mch_destroy_sign(sign)
+      void *sign;
+  {
+!     XDestroyImage((XImage*)sign);
+  }
+  #endif
+  
+*** ../vim-7.2.124/src/version.c	Mon Feb 23 00:53:35 2009
+--- src/version.c	Tue Feb 24 04:09:33 2009
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     125,
+  /**/
+
+-- 
+I have a watch cat! Just break in and she'll watch.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
================================================================


More information about the pld-cvs-commit mailing list