--- deliantra/Deliantra-Client/DC.pm 2007/10/14 23:19:13 1.155 +++ deliantra/Deliantra-Client/DC.pm 2007/12/26 18:20:45 1.166 @@ -17,7 +17,7 @@ use Carp (); BEGIN { - $VERSION = '0.994'; + $VERSION = '0.9961'; use XSLoader; XSLoader::load "CFPlus", $VERSION; @@ -30,7 +30,7 @@ use File::Path (); use Storable (); # finally use Fcntl (); -use JSON::XS qw(to_json from_json); +use JSON::XS qw(encode_json decode_json); =item guard { BLOCK } @@ -162,15 +162,7 @@ local $/; my $CFG = <$fh>; - if ($CFG =~ /^---/) { ## TODO compatibility cruft, remove - require YAML; - utf8::decode $CFG; - $::CFG = YAML::Load ($CFG); - } elsif ($CFG =~ /^\{/) { - $::CFG = from_json $CFG; - } else { - $::CFG = eval $CFG; ## todo comaptibility cruft - } + $::CFG = decode_json $CFG; } sub write_cfg { @@ -180,7 +172,7 @@ open my $fh, ">:utf8", $file or return; - print $fh to_json $::CFG; + print $fh encode_json $::CFG; } sub http_proxy { @@ -238,8 +230,12 @@ package CFPlus::Layout; +$CFPlus::OpenGL::INIT_HOOK{"CFPlus::Layout"} = sub { + glyph_cache_restore; +}; + $CFPlus::OpenGL::SHUTDOWN_HOOK{"CFPlus::Layout"} = sub { - reset_glyph_cache; + glyph_cache_backup; }; 1;