* src/remove.c (AD_stack_clear): New function.
(rm_1): Use it.
(AD_pop_and_chdir): Free *prev_dir just before longjmp.
2006-07-03 Jim Meyering <jim@meyering.net>
+ Fix two small leaks.
+ * src/remove.c (AD_stack_clear): New function.
+ (rm_1): Use it.
+ (AD_pop_and_chdir): Free *prev_dir just before longjmp.
+
* tests/Makefile.am, tests/*/Makefile.am: (TESTS_ENVIRONMENT):
Add $VG_PATH_PREFIX as a prefix to $PATH
obstack_blank (&ds->Active_dir, -(int) sizeof (struct AD_ent));
}
+static void
+AD_stack_clear (Dirstack_state *ds)
+{
+ while (0 < AD_stack_height (ds))
+ {
+ AD_stack_pop (ds);
+ }
+}
+
static Dirstack_state *
ds_init (void)
{
close (fd);
next_cmdline_arg:;
+ free (*prev_dir);
longjmp (ds->current_arg_jumpbuf, 1);
}
}
status = RM_ERROR;
else
status = remove_dir (fd_cwd, ds, filename, x, cwd_errno);
+
+ AD_stack_clear (ds);
}
ds_clear (ds);