diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-04-18 08:46:18 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-04-18 08:46:18 +0000 |
commit | e63a9901412d465cd90143d658fda8fa938d7f8c (patch) | |
tree | 12cf55d22b7b78304e8a692c44217e9531a31c02 /io.c | |
parent | 8a7b08bb787c2d8d531e0b84974fb2a4bec30d87 (diff) |
* re.c (rb_reg_expr_str): should treat backslash specially in
escaping.
* io.c: complete off_t handling; missing argument for
fptr_finalize(); polished rb_scan_args call.
* dir.c: wrap multi-statment macro by do { } while (0)
* eval.c, numeric,c, sprintf.c, util.c: ditto.
* bignum.c (rb_big_eq): check `y == x' if y is neither Fixnum,
Bignum, nor Float.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'io.c')
-rw-r--r-- | io.c | 23 |
1 files changed, 12 insertions, 11 deletions
@@ -364,7 +364,7 @@ rb_io_seek(io, offset, whence) int whence; { OpenFile *fptr; - long pos; + off_t pos; GetOpenFile(io, fptr); pos = fseeko(fptr->f, NUM2OFFT(offset), whence); @@ -381,11 +381,11 @@ rb_io_seek_m(argc, argv, io) VALUE io; { VALUE offset, ptrname; - int whence; + int whence = SEEK_SET; - rb_scan_args(argc, argv, "11", &offset, &ptrname); - if (argc == 1) whence = SEEK_SET; - else whence = NUM2INT(ptrname); + if (rb_scan_args(argc, argv, "11", &offset, &ptrname) == 2) { + whence = NUM2INT(ptrname); + } return rb_io_seek(io, offset, whence); } @@ -395,14 +395,14 @@ rb_io_set_pos(io, offset) VALUE io, offset; { OpenFile *fptr; - long pos; + off_t pos; GetOpenFile(io, fptr); pos = fseeko(fptr->f, NUM2OFFT(offset), SEEK_SET); if (pos != 0) rb_sys_fail(fptr->path); clearerr(fptr->f); - return INT2NUM(pos); + return OFFT2NUM(pos); } static VALUE @@ -1161,6 +1161,7 @@ rb_io_isatty(io) static void fptr_finalize(fptr, fin) OpenFile *fptr; + int fin; { int n1 = 0, n2 = 0, e = 0, f1, f2 = -1; @@ -1318,13 +1319,13 @@ rb_io_sysseek(argc, argv, io) VALUE io; { VALUE offset, ptrname; - int whence; + int whence = SEEK_SET; OpenFile *fptr; off_t pos; - rb_scan_args(argc, argv, "11", &offset, &ptrname); - if (argc == 1) whence = SEEK_SET; - else whence = NUM2INT(ptrname); + if (rb_scan_args(argc, argv, "11", &offset, &ptrname) == 2) { + whence = NUM2INT(ptrname); + } GetOpenFile(io, fptr); if ((fptr->mode & FMODE_READABLE) && READ_DATA_PENDING(fptr->f)) { |