Re: Patch for cppcheck error "Common realloc mistake"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le 27/10/2011 18:27, Mukund Sivaraman a écrit :
Hi Julien

On Thu, Oct 27, 2011 at 05:48:23PM +0200, Julien wrote:
Hello,

I had sent a simple proposed patch 21/08 (http://old.nabble.com/Patch-for-cppcheck-error-%22Common-realloc-mistake%22-to32305733.html)
[snip]
                  if (address_string_len<  len + 3) {
                          address_string_len = len + 3;
-                        address_string = (char *) g_try_realloc
(address_string, address_string_len);
+                        address_string = (char *) g_realloc
(address_string, address_string_len);
                  }

                  memcpy (address_string, "0x", 2);
If address_string is NULL as returned by g_try_realloc(), the following
memcpy() would cause the process to segfault, perhaps creating a core.

With your patch, it abort()s _if_ the underlying realloc() returns
NULL.  But you better read Documentation/vm/overcommit-accounting in a
Linux kernel tree.  Similar implementations exist in other demand
paging kernels too.

There have also been many discussions on whether to check the return
value of a NULL-returning malloc() at all.  See this as an example:
http://news.ycombinator.com/item?id=3112309

Thank you Mukund for these information. I'll take a look at the links you gave
		Mukund
Julien

_______________________________________________
gimp-developer-list mailing list
gimp-developer-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gimp-developer-list



[Index of Archives]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [GIMP for Windows]     [KDE]     [GEGL]     [Gimp's Home]     [Gimp on GUI]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux