On Sat, Oct 03, 2009 at 03:29:31PM +0200, Petter Urkedal wrote: > Setting "av" to one slot before the allocated "default_arg" array causes > glibc abort with "free(): invalid next size (normal)" in some > configurations (Gentoo, glibc-2.9_p20081201-r2, gcc-5.3.2 with PIE). Thanks, your fix looks sane. But I am curious about whether we are triggering some glibc pickiness that is in your setup, or if we are somehow violating the assumption that we only ever look at default_arg[1] and beyond. What show-branch command did you issue to hit this? I was hoping to run it under valgrind. Also: > + if (!default_num) > + /* One unused position for argv[0]. */ > + default_arg[default_num++] = NULL; I don't know if we have a style rule for comments on single line conditionals, but I had to read this a few times to make sure it wasn't missing braces. > - ac = default_num + 1; > - av = default_arg - 1; /* ick; we would not address av[0] */ > + ac = default_num; > + av = default_arg; Any time you can remove a comment with "ick" in it is probably a good thing. ;) -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html