On Mon, 8 Sep 2014 09:28:17 +0300 Pekka Paalanen <ppaala...@gmail.com> wrote:
> On Sun, 07 Sep 2014 21:30:52 -0700 > Bill Spitzak <spit...@gmail.com> wrote: > > > On 09/05/2014 10:47 PM, Ryo Munakata wrote: > > > > > > Hi, Bill. > > > > > > Thank you for reviewing. > > > > > > On Fri, 05 Sep 2014 18:08:44 -0700 > > > Bill Spitzak <spit...@gmail.com> wrote: > > > > > >> I think if the strdup's were removed it would get rid of the memory leak > > >> in a much cleaner way. > > > > > > Do you mean the strdup's in handle_options()? > > > > > > handle_options() copies the content of argv, so if handle_option() > > > doesn't copy it and someone overwrites it, we can't get correct option > > > strings later. > > > argv is not immutable and this is why handle_options() copies the content > > > of argv, I think. > > > > I think it is safe to assume the contents of argv will not get overwritten. > > > > It is common to copy argv itself and modify that, but not to modify the > > strings it points at. > > This would be feasible only if we can guarantee that no-one will ever > need to store a dynamically allocated string to any of the assigned > variables. If something produces a dynamically allocated string, then > you would need to track if you can free() the string or not. > > So to keep things plain and simple, we just choose to dynamically > allocate all strings, so that free() must be done unconditionally. It > is also future-proof in case anyone needs to add a thing that sets a > dynamically allocated string, like something that is a combination of > an environment variable and something else. > > Let's keep all the dynamic allocations in place, because changing it > would affect all users of the command line and config file parsers. > > > Thanks, > pq I agree. Let's go with that. Thanks. -- Ryo Munakata <ryomnk...@gmail.com> _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel