2006-10-02 Dmitry V. Levin <ldv@altlinux.org>
[pspp] / lib / fts.c
index f2cc54adca8d70d20bfb8c67dcd458a30a444b78..8044cd5f86eac6aa31f97b3d6a56ac77d4e54d6f 100644 (file)
--- a/lib/fts.c
+++ b/lib/fts.c
@@ -45,9 +45,7 @@
  * SUCH DAMAGE.
  */
 
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
+#include <config.h>
 
 #if defined(LIBC_SCCS) && !defined(lint)
 static char sccsid[] = "@(#)fts.c      8.6 (Berkeley) 8/14/94";
@@ -461,8 +459,7 @@ fts_close (FTS *sp)
        /* Free up child linked list, sort array, file name buffer. */
        if (sp->fts_child)
                fts_lfree(sp->fts_child);
-       if (sp->fts_array)
-               free(sp->fts_array);
+       free(sp->fts_array);
        free(sp->fts_path);
 
        if (ISSET(FTS_CWDFD))
@@ -959,8 +956,7 @@ fts_build (register FTS *sp, int type)
                                 * structures already allocated.
                                 */
 mem1:                          saved_errno = errno;
-                               if (p)
-                                       free(p);
+                               free(p);
                                fts_lfree(head);
                                closedir(dirp);
                                cur->fts_info = FTS_ERR;
@@ -1337,10 +1333,7 @@ fts_palloc (FTS *sp, size_t more)
         * See if fts_pathlen would overflow.
         */
        if (new_len < sp->fts_pathlen) {
-               if (sp->fts_path) {
-                       free(sp->fts_path);
-                       sp->fts_path = NULL;
-               }
+               free(sp->fts_path);
                sp->fts_path = NULL;
                __set_errno (ENAMETOOLONG);
                return false;