summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwhy <why@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-05-22 06:14:17 +0000
committerwhy <why@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-05-22 06:14:17 +0000
commit97382004344131d65a73380305cda5ced315c810 (patch)
tree61a47dc64a0d9f0b8af06a0ec2ec27084360790a
parent6bd8855d30edadd3be0148f3e4a05a8542944832 (diff)
downloadruby-97382004344131d65a73380305cda5ced315c810.tar.gz
ruby-97382004344131d65a73380305cda5ced315c810.tar.xz
ruby-97382004344131d65a73380305cda5ced315c810.zip
* ext/syck/rubyext.c (rb_syck_err_handler): raise ArgumentError on
malformed YAML. * lib/yaml/rubytypes.rb: String#to_yaml was missing space indicators at the end of a line. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@3851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog8
-rw-r--r--ext/syck/rubyext.c2
-rw-r--r--lib/yaml/rubytypes.rb3
3 files changed, 11 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index e80f6ab4e..811491106 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Thu May 22 06:21:33 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
+
+ * ext/syck/rubyext.c (rb_syck_err_handler): raise ArgumentError on
+ malformed YAML.
+
+ * lib/yaml/rubytypes.rb: String#to_yaml was missing space indicators at
+ the end of a line.
+
Thu May 22 05:43:24 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c (syck_parser_load): root-level false was returning
diff --git a/ext/syck/rubyext.c b/ext/syck/rubyext.c
index f55edadb4..60facd501 100644
--- a/ext/syck/rubyext.c
+++ b/ext/syck/rubyext.c
@@ -379,7 +379,7 @@ rb_syck_err_handler(p, msg)
endl++;
endl[0] = '\0';
- rb_raise(rb_eLoadError, "%s on line %d, col %d: `%s'",
+ rb_raise(rb_eArgError, "%s on line %d, col %d: `%s'",
msg,
p->linect,
p->cursor - p->lineptr,
diff --git a/lib/yaml/rubytypes.rb b/lib/yaml/rubytypes.rb
index ae5585db5..a67023763 100644
--- a/lib/yaml/rubytypes.rb
+++ b/lib/yaml/rubytypes.rb
@@ -1,4 +1,5 @@
require 'date'
+require 'yaml/constants'
#
# Type conversions
#
@@ -273,7 +274,7 @@ class String
"''"
elsif YAML.detect_implicit( self ) != 'str'
"\"#{YAML.escape( self )}\""
- elsif self =~ /#{YAML::ESCAPE_CHAR}|[#{YAML::SPACE_INDICATORS}] |\n|\'/
+ elsif self =~ /#{YAML::ESCAPE_CHAR}|[#{YAML::SPACE_INDICATORS}]( |\n|$)|\'/
"\"#{YAML.escape( self )}\""
elsif self =~ /^[^#{YAML::WORD_CHAR}]/
"\"#{YAML.escape( self )}\""