NUL-teminated at all times, and that we don't make unneeded calls to
free().
-/* $LP: LPlib/source/LPdir_unix.c,v 1.6 2004/06/14 10:08:43 _cvs_levitte Exp $ */
+/* $LP: LPlib/source/LPdir_unix.c,v 1.8 2004/07/19 16:34:39 _cvs_levitte Exp $ */
/*
* Copyright (c) 2004, Richard Levitte <richard@levitte.org>
* All rights reserved.
return 0;
}
- strncpy((*ctx)->entry_name, direntry->d_name, sizeof((*ctx)->entry_name));
+ strncpy((*ctx)->entry_name, direntry->d_name, sizeof((*ctx)->entry_name) - 1);
+ (*ctx)->entry_name[sizeof((*ctx)->entry_name) - 1] = '\0';
return (*ctx)->entry_name;
}
-/* $LP: LPlib/source/LPdir_win.c,v 1.1 2004/06/14 10:07:56 _cvs_levitte Exp $ */
+/* $LP: LPlib/source/LPdir_win.c,v 1.3 2004/07/19 16:34:54 _cvs_levitte Exp $ */
/*
* Copyright (c) 2004, Richard Levitte <richard@levitte.org>
* All rights reserved.
if (*ctx == NULL)
{
errno = ENOMEM;
- free(*ctx);
return 0;
}
memset(*ctx, '\0', sizeof(LP_DIR_CTX));
{
errno = ENOMEM;
free(*ctx);
- free(wdir);
return 0;
}