[macruby-changes] [1609] MacRuby/branches/experimental

source_changes at macosforge.org source_changes at macosforge.org
Wed May 27 09:56:49 PDT 2009


Revision: 1609
          http://trac.macosforge.org/projects/ruby/changeset/1609
Author:   pthomson at apple.com
Date:     2009-05-27 09:56:48 -0700 (Wed, 27 May 2009)
Log Message:
-----------
Fixed a really egregious bug in putc().

Modified Paths:
--------------
    MacRuby/branches/experimental/io.c
    MacRuby/branches/experimental/rakelib/spec.rake
    MacRuby/branches/experimental/string.c

Modified: MacRuby/branches/experimental/io.c
===================================================================
--- MacRuby/branches/experimental/io.c	2009-05-27 15:42:34 UTC (rev 1608)
+++ MacRuby/branches/experimental/io.c	2009-05-27 16:56:48 UTC (rev 1609)
@@ -402,9 +402,6 @@
     io_struct = ExtractIOStruct(io);
     rb_io_assert_writable(io_struct);
 
-    // TODO: Account for the port not being IO, use funcall to call .write()
-    // instead.
-
     to_write = rb_obj_as_string(to_write);
 
     if (CLASS_OF(to_write) == rb_cByteString) {
@@ -2365,8 +2362,8 @@
 static VALUE
 rb_io_putc(VALUE io, SEL sel, VALUE ch)
 {
-    char c = NUM2CHR(ch);
-    rb_io_write(io, sel, rb_str_new(&c, 1));
+	char mystr[2] = {NUM2CHR(ch), '\0'};
+    rb_io_write(io, sel, rb_str_new(mystr, 1));
     return ch;
 }
 

Modified: MacRuby/branches/experimental/rakelib/spec.rake
===================================================================
--- MacRuby/branches/experimental/rakelib/spec.rake	2009-05-27 15:42:34 UTC (rev 1608)
+++ MacRuby/branches/experimental/rakelib/spec.rake	2009-05-27 16:56:48 UTC (rev 1609)
@@ -45,7 +45,6 @@
     putc
     readchar
     sync
-    syswrite
     tell
     to_i
     to_io

Modified: MacRuby/branches/experimental/string.c
===================================================================
--- MacRuby/branches/experimental/string.c	2009-05-27 15:42:34 UTC (rev 1608)
+++ MacRuby/branches/experimental/string.c	2009-05-27 16:56:48 UTC (rev 1609)
@@ -112,6 +112,7 @@
     }
 
     if (ptr != NULL && len > 0) {
+	// What in the name of all that is holy is this?!
 	const long slen = strlen(ptr);
 
 	if (len <= slen) {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090527/13e838e2/attachment.html>


More information about the macruby-changes mailing list