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

ruby-changes:5522

From: knu <ko1@a...>
Date: Mon, 9 Jun 2008 02:44:52 +0900 (JST)
Subject: [ruby-changes:5522] Ruby:r17025 (ruby_1_8): * ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up

knu	2008-06-09 02:44:33 +0900 (Mon, 09 Jun 2008)

  New Revision: 17025

  Modified files:
    branches/ruby_1_8/ChangeLog
    branches/ruby_1_8/ext/zlib/zlib.c
    branches/ruby_1_8/version.h

  Log:
    * ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
      initialize_copy; [ruby-list:45016], [ruby-list:45018].


  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/ChangeLog?r1=17025&r2=17024&diff_format=u
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/ext/zlib/zlib.c?r1=17025&r2=17024&diff_format=u
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/version.h?r1=17025&r2=17024&diff_format=u

Index: ruby_1_8/ext/zlib/zlib.c
===================================================================
--- ruby_1_8/ext/zlib/zlib.c	(revision 17024)
+++ ruby_1_8/ext/zlib/zlib.c	(revision 17025)
@@ -1182,14 +1182,19 @@
 rb_deflate_init_copy(self, orig)
     VALUE self, orig;
 {
-    struct zstream *z1 = get_zstream(self);
-    struct zstream *z2 = get_zstream(orig);
+    struct zstream *z1, *z2;
     int err;
 
+    Data_Get_Struct(self, struct zstream, z1);
+    z2 = get_zstream(orig);
+
     err = deflateCopy(&z1->stream, &z2->stream);
     if (err != Z_OK) {
 	raise_zlib_error(err, 0);
     }
+    z1->input = NIL_P(z2->input) ? Qnil : rb_str_dup(z2->input);
+    z1->buf   = NIL_P(z2->buf)   ? Qnil : rb_str_dup(z2->buf);
+    z1->buf_filled = z2->buf_filled;
     z1->flags = z2->flags;
 
     return self;
@@ -3371,7 +3376,7 @@
     rb_define_singleton_method(cDeflate, "deflate", rb_deflate_s_deflate, -1);
     rb_define_alloc_func(cDeflate, rb_deflate_s_allocate);
     rb_define_method(cDeflate, "initialize", rb_deflate_initialize, -1);
-    rb_define_method(cDeflate, "initialize_copy", rb_deflate_init_copy, 0);
+    rb_define_method(cDeflate, "initialize_copy", rb_deflate_init_copy, 1);
     rb_define_method(cDeflate, "deflate", rb_deflate_deflate, -1);
     rb_define_method(cDeflate, "<<", rb_deflate_addstr, 1);
     rb_define_method(cDeflate, "flush", rb_deflate_flush, -1);
Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 17024)
+++ ruby_1_8/ChangeLog	(revision 17025)
@@ -1,3 +1,8 @@
+Mon Jun  9 02:32:58 2008  Akinori MUSHA  <knu@i...>
+
+	* ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
+	  initialize_copy; [ruby-list:45016], [ruby-list:45018].
+
 Sun Jun  8 04:32:33 2008  Kazuhiro NISHIYAMA  <zn@m...>
 
 	* NEWS: Mention new constants.
Index: ruby_1_8/version.h
===================================================================
--- ruby_1_8/version.h	(revision 17024)
+++ ruby_1_8/version.h	(revision 17025)
@@ -1,7 +1,7 @@
 #define RUBY_VERSION "1.8.7"
-#define RUBY_RELEASE_DATE "2008-06-08"
+#define RUBY_RELEASE_DATE "2008-06-09"
 #define RUBY_VERSION_CODE 187
-#define RUBY_RELEASE_CODE 20080608
+#define RUBY_RELEASE_CODE 20080609
 #define RUBY_PATCHLEVEL 5000
 
 #define RUBY_VERSION_MAJOR 1
@@ -9,7 +9,7 @@
 #define RUBY_VERSION_TEENY 7
 #define RUBY_RELEASE_YEAR 2008
 #define RUBY_RELEASE_MONTH 6
-#define RUBY_RELEASE_DAY 8
+#define RUBY_RELEASE_DAY 9
 
 #ifdef RUBY_EXTERN
 RUBY_EXTERN const char ruby_version[];

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

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