summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--io.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index ce961e684f..395702e64c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Sep 30 20:29:10 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
+
+ * io.c (rb_io_inspect): not need to raise IOError. [ruby-talk:51871]
+
Sun Sep 29 18:30:24 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (rb_w32_open_osfhandle): adjust
diff --git a/io.c b/io.c
index 80c12bc5b5..a10ff06dc3 100644
--- a/io.c
+++ b/io.c
@@ -555,8 +555,8 @@ rb_io_inspect(obj)
OpenFile *fptr;
char *buf, *cname;
- GetOpenFile(obj, fptr);
- if (!fptr->path) return rb_any_to_s(obj);
+ fptr = RFILE(rb_io_taint_check(obj))->fptr;
+ if (!fptr || !(fptr->f || fptr->f2) || !fptr->path) return rb_any_to_s(obj);
cname = rb_class2name(CLASS_OF(obj));
buf = ALLOCA_N(char, strlen(cname) + strlen(fptr->path) + 5);
sprintf(buf, "#<%s:%s>", cname, fptr->path);