On Fri, Apr 20, 2012 at 5:18 PM, Chase Douglas <[email protected]> wrote: > XauFileName() may allocate and return a static buffer. The only > way to ensure it is freed is to deallocate it when the program exits. > > Signed-off-by: Chase Douglas <[email protected]> > --- > AuFileName.c | 17 ++++++++++++++++- > 1 files changed, 16 insertions(+), 1 deletions(-) > > diff --git a/AuFileName.c b/AuFileName.c > index f384f75..bc7b177 100644 > --- a/AuFileName.c > +++ b/AuFileName.c > @@ -31,13 +31,22 @@ in this Software without prior written authorization from > The Open Group. > #include <X11/Xos.h> > #include <stdlib.h> > > +static char *buf = NULL; > + > +static void > +free_filename_buffer(void) > +{ > + free(buf); > + buf = NULL; > +} > +
Strictly speaking, you don't need to set buf = NULL in either place. static variables are automatically initialized, and I can't imagine why the program should care what the value of buf is when it's exiting. :) Doesn't really matter though. _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
