diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-04 14:43:45 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-04 14:43:45 +0000 |
commit | dac421a9c987b74d82a074f19f3e3e038f99cc01 (patch) | |
tree | 471b97f04e17f7a7fb5bb2342f611c2be36c348e | |
parent | 64b633f069e9d86bd4cc6f1786558fe900df9d1a (diff) | |
download | ruby-dac421a9c987b74d82a074f19f3e3e038f99cc01.tar.gz |
* include/ruby/intern.h (rb_file_open_str): declared.
* io.c (rb_file_open_str): defined.
* ext/zlib/zlib.c (gzfile_s_open): use rb_file_open_str instead of
rb_file_open.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | ext/zlib/zlib.c | 2 | ||||
-rw-r--r-- | include/ruby/intern.h | 1 | ||||
-rw-r--r-- | io.c | 6 |
4 files changed, 17 insertions, 1 deletions
@@ -1,3 +1,12 @@ +Thu Sep 4 23:42:42 2008 Tanaka Akira <akr@fsij.org> + + * include/ruby/intern.h (rb_file_open_str): declared. + + * io.c (rb_file_open_str): defined. + + * ext/zlib/zlib.c (gzfile_s_open): use rb_file_open_str instead of + rb_file_open. + Thu Sep 4 23:18:55 2008 Tanaka Akira <akr@fsij.org> * enc/trans/newline.trans: record newline types met in universal diff --git a/ext/zlib/zlib.c b/ext/zlib/zlib.c index 636ec325ce..9bb8f33344 100644 --- a/ext/zlib/zlib.c +++ b/ext/zlib/zlib.c @@ -2294,7 +2294,7 @@ gzfile_s_open(int argc, VALUE *argv, VALUE klass, const char *mode) } filename = argv[0]; FilePathValue(filename); - io = rb_file_open(RSTRING_PTR(filename), mode); + io = rb_file_open_str(filename, mode); argv[0] = io; return rb_gzfile_s_wrap(argc, argv, klass); diff --git a/include/ruby/intern.h b/include/ruby/intern.h index 95e70c52be..a2010bb327 100644 --- a/include/ruby/intern.h +++ b/include/ruby/intern.h @@ -387,6 +387,7 @@ VALUE rb_io_print(int, VALUE*, VALUE); VALUE rb_io_puts(int, VALUE*, VALUE); VALUE rb_io_fdopen(int, int, const char*); VALUE rb_file_open(const char*, const char*); +VALUE rb_file_open_str(VALUE, const char*); VALUE rb_gets(void); void rb_write_error(const char*); void rb_write_error2(const char*, long); @@ -4051,6 +4051,12 @@ rb_file_open_internal(VALUE io, VALUE filename, const char *mode) } VALUE +rb_file_open_str(VALUE fname, const char *mode) +{ + return rb_file_open_internal(io_alloc(rb_cFile), fname, mode); +} + +VALUE rb_file_open(const char *fname, const char *mode) { return rb_file_open_internal(io_alloc(rb_cFile), rb_str_new_cstr(fname), mode); |