[前][次][番号順一覧][スレッド一覧]

ruby-changes:2283

From: ko1@a...
Date: 25 Oct 2007 14:19:50 +0900
Subject: [ruby-changes:2283] nobu - Ruby:r13774 (trunk, ruby_1_8): * io.c (rb_io_tell, rb_io_seek): check errno too.

nobu	2007-10-25 14:19:33 +0900 (Thu, 25 Oct 2007)

  New Revision: 13774

  Modified files:
    branches/ruby_1_8/ChangeLog
    branches/ruby_1_8/io.c
    branches/ruby_1_8/version.h
    trunk/ChangeLog
    trunk/io.c
    trunk/version.h

  Log:
    * io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]


  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/version.h?r1=13774&r2=13773
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/ChangeLog?r1=13774&r2=13773
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=13774&r2=13773
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/io.c?r1=13774&r2=13773
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/io.c?r1=13774&r2=13773
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/version.h?r1=13774&r2=13773

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 13773)
+++ ChangeLog	(revision 13774)
@@ -1,4 +1,9 @@
+Thu Oct 25 14:19:33 2007  Nobuyoshi Nakada  <nobu@r...>
+
+	* io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]
+
 Thu Oct 25 13:59:53 2007 David Flanagan <davidflanagan@r...>
+
 	* parse.y (parser_tokspace): increment tokidx
 	  fixes test failure at [test/ruby/test_stringchar.rb:72]
 	
Index: io.c
===================================================================
--- io.c	(revision 13773)
+++ io.c	(revision 13774)
@@ -318,6 +318,7 @@
 {
     io_fflush(fptr);
     io_unread(fptr);
+    errno = 0;
     return fptr;
 }
 
@@ -780,7 +781,7 @@
 
     GetOpenFile(io, fptr);
     pos = io_tell(fptr);
-    if (pos < 0) rb_sys_fail(fptr->path);
+    if (pos < 0 && errno) rb_sys_fail(fptr->path);
     return OFFT2NUM(pos);
 }
 
@@ -793,7 +794,7 @@
     pos = NUM2OFFT(offset);
     GetOpenFile(io, fptr);
     pos = io_seek(fptr, pos, whence);
-    if (pos < 0) rb_sys_fail(fptr->path);
+    if (pos < 0 && errno) rb_sys_fail(fptr->path);
 
     return INT2FIX(0);
 }
Index: version.h
===================================================================
--- version.h	(revision 13773)
+++ version.h	(revision 13774)
@@ -1,7 +1,7 @@
 #define RUBY_VERSION "1.9.0"
-#define RUBY_RELEASE_DATE "2007-10-24"
+#define RUBY_RELEASE_DATE "2007-10-25"
 #define RUBY_VERSION_CODE 190
-#define RUBY_RELEASE_CODE 20071024
+#define RUBY_RELEASE_CODE 20071025
 #define RUBY_PATCHLEVEL 0
 
 #define RUBY_VERSION_MAJOR 1
@@ -9,7 +9,7 @@
 #define RUBY_VERSION_TEENY 0
 #define RUBY_RELEASE_YEAR 2007
 #define RUBY_RELEASE_MONTH 10
-#define RUBY_RELEASE_DAY 24
+#define RUBY_RELEASE_DAY 25
 
 #ifdef RUBY_EXTERN
 RUBY_EXTERN const char ruby_version[];
Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 13773)
+++ ruby_1_8/ChangeLog	(revision 13774)
@@ -1,3 +1,7 @@
+Thu Oct 25 14:19:33 2007  Nobuyoshi Nakada  <nobu@r...>
+
+	* io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]
+
 Wed Oct 25 08:03:53 2007  James Edward Gray II  <jeg2@r...>
 
 	Merged 13767, 13768, 13769, and 13770 from trunk.
Index: ruby_1_8/version.h
===================================================================
--- ruby_1_8/version.h	(revision 13773)
+++ ruby_1_8/version.h	(revision 13774)
@@ -1,7 +1,7 @@
 #define RUBY_VERSION "1.8.6"
-#define RUBY_RELEASE_DATE "2007-10-21"
+#define RUBY_RELEASE_DATE "2007-10-25"
 #define RUBY_VERSION_CODE 186
-#define RUBY_RELEASE_CODE 20071021
+#define RUBY_RELEASE_CODE 20071025
 #define RUBY_PATCHLEVEL 5000
 
 #define RUBY_VERSION_MAJOR 1
@@ -9,7 +9,7 @@
 #define RUBY_VERSION_TEENY 6
 #define RUBY_RELEASE_YEAR 2007
 #define RUBY_RELEASE_MONTH 10
-#define RUBY_RELEASE_DAY 21
+#define RUBY_RELEASE_DAY 25
 
 #ifdef RUBY_EXTERN
 RUBY_EXTERN const char ruby_version[];
Index: ruby_1_8/io.c
===================================================================
--- ruby_1_8/io.c	(revision 13773)
+++ ruby_1_8/io.c	(revision 13774)
@@ -245,6 +245,7 @@
     if (fptr->mode & FMODE_WBUF) {
 	io_fflush(GetWriteFile(fptr), fptr);
     }
+    errno = 0;
     return fptr;
 }
 
@@ -668,7 +669,7 @@
 
     GetOpenFile(io, fptr);
     pos = io_tell(fptr);
-    if (pos < 0) rb_sys_fail(fptr->path);
+    if (pos < 0 && errno) rb_sys_fail(fptr->path);
     return OFFT2NUM(pos);
 }
 
@@ -683,7 +684,7 @@
     pos = NUM2OFFT(offset);
     GetOpenFile(io, fptr);
     pos = io_seek(fptr, pos, whence);
-    if (pos < 0) rb_sys_fail(fptr->path);
+    if (pos < 0 && errno) rb_sys_fail(fptr->path);
     clearerr(fptr->f);
 
     return INT2FIX(0);

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧]