diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | lib/yaml/rubytypes.rb | 1 | ||||
-rw-r--r-- | test/yaml/test_yaml.rb | 11 |
3 files changed, 20 insertions, 2 deletions
@@ -1,3 +1,8 @@ +Tue Jan 10 12:00:48 2006 Aaron Schrab <aaron @nospam@ schrab.com> + + * lib/yaml/rubytypes.rb (Symbol#yaml_new): YAML loading of quoted + Symbols broken. [ruby-Bugs:2535] + Mon Jan 9 19:54:35 2006 arton <artonx@yahoo.co.jp> * ext/zlib/extconf.rb: zlib compiled DLL version 1.2.3 distributed by @@ -8,8 +13,9 @@ Mon Jan 9 14:17:12 2006 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp> * win32/Makefile.sub (OPTFLAGS): I have experienced trouble on y- flag, (VisualC++6) so use -O2b2xg- if $(MSC_VER) < 1400. [ruby-core:7040] - * lib/webrick/httpservlet/filehandler.rb: fixed typo. (Kero van Gelder) - [ruby-core:7075] +Mon Jan 9 14:17:12 2006 Kero van Gelder <rubyforge @nospam@ kero.tmfweb.nl> + + * lib/webrick/httpservlet/filehandler.rb: fixed typo. [ruby-core:7075] Sat Jan 7 15:40:07 2006 Nobuyoshi Nakada <nobu@ruby-lang.org> diff --git a/lib/yaml/rubytypes.rb b/lib/yaml/rubytypes.rb index 10516d7557..d58e9bb38e 100644 --- a/lib/yaml/rubytypes.rb +++ b/lib/yaml/rubytypes.rb @@ -183,6 +183,7 @@ class Symbol yaml_as "tag:ruby.yaml.org,2002:sym" def Symbol.yaml_new( klass, tag, val ) if String === val + val = YAML::load( val ) if val =~ /\A(["']).*\1\z/ val.intern else raise YAML::TypeError, "Invalid Symbol: " + val.inspect diff --git a/test/yaml/test_yaml.rb b/test/yaml/test_yaml.rb index fd91fa866c..fe506675f3 100644 --- a/test/yaml/test_yaml.rb +++ b/test/yaml/test_yaml.rb @@ -1225,6 +1225,17 @@ EOY inspect_str = "[[...], [...]]" assert_equal( inspect_str, YAML::load( a.to_yaml ).inspect ) end + + # + # Test Symbol cycle + # + def test_symbol_cycle + # + # From Aaron Schrab [ruby-Bugs:2535] + # + assert_cycle(:"^foo") + end + end if $0 == __FILE__ |