summaryrefslogtreecommitdiff
path: root/dir.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-09-12 08:48:57 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-09-12 08:48:57 +0000
commit563885cad6b8b6e3485a676c06d53acec1e93afc (patch)
treecfed014df61f4bc4fc6fd0fa39d0896ac49a0505 /dir.c
parentb031fdbc0e58d5845b071e80efd5d7ee7595c82c (diff)
* dir.c (glob_helper): fixed freeing buffer. (ruby-bugs-ja:PR#332)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'dir.c')
-rw-r--r--dir.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/dir.c b/dir.c
index 72ce949..72f5fd3 100644
--- a/dir.c
+++ b/dir.c
@@ -787,6 +787,7 @@ glob_helper(path, sub, flags, func, arg)
status = glob_helper(buf, t, flags, func, arg);
free(buf);
if (status) goto finalize;
+ continue;
}
free(buf);
continue;
@@ -796,6 +797,7 @@ glob_helper(path, sub, flags, func, arg)
sprintf(buf, "%s%s%s", base, (BASE) ? "/" : "", dp->d_name);
if (!m) {
status = glob_call_func(func, path, arg);
+ free(buf);
if (status) goto finalize;
continue;
}