diff options
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 8 |
1 files changed, 0 insertions, 8 deletions
@@ -511,10 +511,7 @@ ruby_getcwd(void) char *buf = xmalloc(2); strcpy(buf, "."); #elif defined HAVE_GETCWD -# undef RUBY_UNTYPED_DATA_WARNING -# define RUBY_UNTYPED_DATA_WARNING 0 # if defined NO_GETCWD_MALLOC - VALUE guard = Data_Wrap_Struct((VALUE)0, NULL, RUBY_DEFAULT_FREE, NULL); int size = 200; char *buf = xmalloc(size); @@ -522,22 +519,17 @@ ruby_getcwd(void) int e = errno; if (e != ERANGE) { xfree(buf); - DATA_PTR(guard) = NULL; rb_syserr_fail(e, "getcwd"); } size *= 2; - DATA_PTR(guard) = buf; buf = xrealloc(buf, size); } # else - VALUE guard = Data_Wrap_Struct((VALUE)0, NULL, free, NULL); char *buf, *cwd = getcwd(NULL, 0); - DATA_PTR(guard) = cwd; if (!cwd) rb_sys_fail("getcwd"); buf = ruby_strdup(cwd); /* allocate by xmalloc */ free(cwd); # endif - DATA_PTR(RB_GC_GUARD(guard)) = NULL; #else # ifndef PATH_MAX # define PATH_MAX 8192 |