summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--win32/win32.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index ea7d32856..a517a2808 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed Aug 12 14:14:42 2009 NAKAMURA Usaku <usa@ruby-lang.org>
+
+ * win32/win32.c (readdir_internal): free old temporary filename.
+ [ruby-core:24820]
+
Wed Aug 12 12:59:51 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_new_frozen): must not change encoding of frozen
diff --git a/win32/win32.c b/win32/win32.c
index fc33b1152..1d6a4a68e 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -1765,6 +1765,8 @@ readdir_internal(DIR *dirp, BOOL (*conv)(const WCHAR *, struct direct *, rb_enco
//
// first set up the structure to return
//
+ if (dirp->dirstr.d_name)
+ free(dirp->dirstr.d_name);
conv(dirp->curr, &dirp->dirstr, enc);
//
@@ -3585,8 +3587,8 @@ rb_w32_getcwd(char *buffer, int size)
size = len;
if (!p) {
errno = ENOMEM;
- return NULL;
- }
+ return NULL;
+ }
}
if (!GetCurrentDirectory(size, p)) {