summaryrefslogtreecommitdiff
path: root/file.c
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-21 10:20:55 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-21 10:20:55 +0000
commitcefd28a84fb25b80d8afeea15df03ac90ac1d615 (patch)
tree8d3dea72e352f38788ae3c35b32b743e2b45d1bd /file.c
parent61acccefb7b90ab8dcbccc216e56c0ea61f1b54a (diff)
* file.c (rb_stat_inspect): don't raise if self is not initialized.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'file.c')
-rw-r--r--file.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/file.c b/file.c
index 970875f946..3c932cd2ec 100644
--- a/file.c
+++ b/file.c
@@ -671,6 +671,12 @@ rb_stat_inspect(VALUE self)
{"ctime", rb_stat_ctime},
};
+ struct stat* st;
+ Data_Get_Struct(self, struct stat, st);
+ if (!st) {
+ return rb_sprintf("#<%s: uninitialized>", rb_obj_classname(self));
+ }
+
str = rb_str_buf_new2("#<");
rb_str_buf_cat2(str, rb_obj_classname(self));
rb_str_buf_cat2(str, " ");