[macruby-changes] [196] MacRuby/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Thu May 15 17:36:24 PDT 2008
Revision: 196
http://trac.macosforge.org/projects/ruby/changeset/196
Author: lsansonetti at apple.com
Date: 2008-05-15 17:36:24 -0700 (Thu, 15 May 2008)
Log Message:
-----------
fixing regexp parsing errors, adding ASCII-8BIT -> ASCII encoding shortcut: sample/test.rb now passes all tests
Modified Paths:
--------------
MacRuby/trunk/encoding.c
MacRuby/trunk/re.c
Modified: MacRuby/trunk/encoding.c
===================================================================
--- MacRuby/trunk/encoding.c 2008-05-16 00:11:05 UTC (rev 195)
+++ MacRuby/trunk/encoding.c 2008-05-16 00:36:24 UTC (rev 196)
@@ -1045,9 +1045,14 @@
static VALUE
enc_find2(VALUE enc)
{
+ CFStringRef str;
CFStringEncoding e;
-
- e = CFStringConvertIANACharSetNameToEncoding((CFStringRef)StringValue(enc));
+
+ str = (CFStringRef)StringValue(enc);
+ if (CFEqual(str, CFSTR("ASCII-8BIT")))
+ str = CFSTR("ASCII");
+
+ e = CFStringConvertIANACharSetNameToEncoding(str);
if (e == kCFStringEncodingInvalidId)
return Qnil;
return enc_make(&e);
@@ -1415,14 +1420,14 @@
CFStringRef str;
if (enc != NULL
&& (str = CFStringConvertEncodingToIANACharSetName(*enc)) != NULL)
- return str;
+ return (VALUE)str;
return Qnil;
}
const char *
rb_enc_name(rb_encoding *enc)
{
- CFStringRef str = rb_enc_name2(enc);
+ VALUE str = rb_enc_name2(enc);
return str == Qnil ? NULL : RSTRING_CPTR(str);
}
Modified: MacRuby/trunk/re.c
===================================================================
--- MacRuby/trunk/re.c 2008-05-16 00:11:05 UTC (rev 195)
+++ MacRuby/trunk/re.c 2008-05-16 00:36:24 UTC (rev 196)
@@ -181,9 +181,6 @@
*option = 0;
switch (c) {
- case 'n':
- *kcode = -1;
- return (*option = ARG_ENCODING_NONE);
#if !WITH_OBJC
case 'e':
*kcode = rb_enc_find_index("EUC-JP");
@@ -194,7 +191,14 @@
case 'u':
*kcode = rb_enc_find_index("UTF-8");
break;
+#else
+ case 'e':
+ case 's':
+ case 'u':
#endif
+ case 'n':
+ *kcode = -1;
+ return (*option = ARG_ENCODING_NONE);
default:
*kcode = -1;
return (*option = char_to_option(c));
@@ -2233,7 +2237,7 @@
VALUE unescaped;
rb_encoding *fixed_enc = 0;
#if WITH_OBJC
- rb_encoding *a_enc = NULL;
+ rb_encoding *a_enc = enc;
#else
rb_encoding *a_enc = rb_ascii8bit_encoding();
#endif
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macruby-changes/attachments/20080515/7a9db280/attachment.htm
More information about the macruby-changes
mailing list