summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-04-11 05:49:34 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-04-11 05:49:34 +0000
commita700bcfafa78cc719cc5e758cbbd20076bee6adb (patch)
tree0bece1bf75e40133516d7de9c0e1c5722b526c6f
parent1fab5e27c3dfe4d229510d27b2562f5aa904558c (diff)
* file.c (rb_stat): dereference using StringValuePtr().
* file.c (rb_file_s_stat): use rb_stat(). [ruby-dev:20007] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--file.c7
2 files changed, 8 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 45a16e53bb..027f73b05e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Fri Apr 11 14:48:47 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * file.c (rb_stat): dereference using StringValuePtr().
+
+ * file.c (rb_file_s_stat): use rb_stat(). [ruby-dev:20007]
+
Fri Apr 11 10:51:08 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/benchmark.rb (Benchmark::bm): get rid of warning.
diff --git a/file.c b/file.c
index b5747113c8..bd793c5a1b 100644
--- a/file.c
+++ b/file.c
@@ -354,10 +354,7 @@ rb_stat(file, st)
return fstat(fileno(fptr->f), st);
}
SafeStringValue(file);
-#if defined DJGPP
- if (RSTRING(file)->len == 0) return -1;
-#endif
- return stat(RSTRING(file)->ptr, st);
+ return stat(StringValuePtr(file), st);
}
static VALUE
@@ -367,7 +364,7 @@ rb_file_s_stat(klass, fname)
struct stat st;
SafeStringValue(fname);
- if (stat(RSTRING(fname)->ptr, &st) == -1) {
+ if (rb_stat(fname, &st) < 0) {
rb_sys_fail(RSTRING(fname)->ptr);
}
return stat_new(&st);