Clear the stream after serializing it in Object#to_eet.
authorTilman Sauerbeck <tilman@code-monkey.de>
Fri, 8 Jul 2005 22:35:08 +0000 (22:35 +0000)
committerTilman Sauerbeck <tilman@code-monkey.de>
Fri, 8 Jul 2005 22:35:08 +0000 (22:35 +0000)
This slightly increases performance.

ChangeLog
ext/ext.c

index aa269dc9a7d7309b1efcf1e96f8deed20c2d43da..138496fb5b8d667c6ba3c9b91fec097d46640a34 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,11 @@
 --
-$Id: ChangeLog 68 2005-06-29 16:50:47Z tilman $
+$Id: ChangeLog 69 2005-07-08 22:35:08Z tilman $
 ++
 
+2005-07-09 Tilman Sauerbeck (tilman at code-monkey de)
+        * ext/ext.c: Object#to_eet: clear the stream after serializing it,
+          which slightly increases performance
+
 2005-06-29 Tilman Sauerbeck (tilman at code-monkey de)
         * ext/ext.c: Store the result of rb_intern("pack") in a
           global variable
index 12b850014f25ae4aa0fa5d8c023793583c7c91fb..8ba3d5c16daf8d4a709e761f2263ae0cbae3600a 100644 (file)
--- a/ext/ext.c
+++ b/ext/ext.c
@@ -1,5 +1,5 @@
 /*
- * $Id: ext.c 68 2005-06-29 16:50:47Z tilman $
+ * $Id: ext.c 69 2005-07-08 22:35:08Z tilman $
  *
  * Copyright (c) 2005 Tilman Sauerbeck (tilman at code-monkey de)
  *
@@ -598,6 +598,9 @@ c_to_eet (VALUE self)
 
        args[0] = name;
        args[1] = rb_funcall (stream, id_serialize, 0);
+
+       rb_ary_clear (stream); /* give the GC a hand... */
+
        chunk = rb_class_new_instance (2, args, cChunk);
 
        return rb_funcall (chunk, id_serialize, 0);