diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | file.c | 6 | ||||
-rw-r--r-- | regex.c | 3 |
3 files changed, 11 insertions, 2 deletions
@@ -1,3 +1,7 @@ +Thu May 1 08:24:00 2003 Yukihiro Matsumoto <matz@ruby-lang.org> + + * regex.c (re_match_exec): $ _always_ matches at the end of string. + Wed Apr 30 14:12:00 2003 wanowa.kimura@nifty.ne.jp (kimura wataru) * net/imap.rb: support THREAD extension. @@ -2045,6 +2045,7 @@ rb_file_flock(obj, operation) if (fptr->mode & FMODE_WRITABLE) { fflush(GetWriteFile(fptr)); } + retry: TRAP_BEG; ret = flock(fileno(fptr->f), NUM2INT(operation)); TRAP_END; @@ -2056,6 +2057,11 @@ rb_file_flock(obj, operation) case EWOULDBLOCK: #endif return Qfalse; + case EINTR: +#if defined(ERESTART) + case ERESTART: +#endif + goto retry; } rb_sys_fail(fptr->path); } @@ -3883,8 +3883,7 @@ re_match_exec(bufp, string_arg, size, pos, beg, regs) case endline: if (AT_STRINGS_END(d)) { - if (size == 0 || d[-1] != '\n') - break; + break; } else if (*d == '\n') break; |