Ну и поделитесь, где еще засады ) 27 ноября 2014 г., 2:13 пользователь Sergey Aleynikov < [email protected]> написал:
> Добрый день, > > Что именно и когда ответит Леман - непредсказуемо) Я нашел, как > минимум, еще два места, где модулю сносит стек. Прислать патч, или > попробуете сначала с ним списаться? > > Best regards, > Sergey Aleynikov > > > 2014-11-26 20:01 GMT+03:00 Вадим Власов <[email protected]>: > > Исследуя новый сериализатор в JSON::XS наткнулся: > > > > $ echo 'use strict; > > use warnings; > > use feature "say"; > > > > use JSON::XS; > > my $j=JSON::XS->new->allow_tags; > > > > say "JSON::XS: $JSON::XS::VERSION"; > > say "Types::Serialiser: $Types::Serialiser::VERSION"; > > > > my $t = $j->encode( Foo->new ); > > say $t; > > > > my @t = $j->encode( Foo->new ); > > > > package Foo; > > sub new { bless {}, $_[0]; } > > sub FREEZE { ( 123, 456 ); }' | perl > > JSON::XS: 3.01 > > Types::Serialiser: 1.0 > > ("Foo")[123,456] > > panic: attempt to copy freed scalar c37a18 to c37a00 at - line 14. > > > > $ perl -MJSON::XS -wE 'say JSON::XS->new->allow_tags->encode( bless {}, > Foo > > ); package Foo; sub FREEZE{ return 123 }' > > Use of uninitialized value in say at -e line 1. > > ("Foo")[123] > > > > $ perl -MJSON::XS -wE 'say scalar( JSON::XS->new->allow_tags->encode( > bless > > {}, Foo )); package Foo; sub FREEZE{ return 123 }' > > ("Foo")[123] > > > > Проверили на разных машинах и на разных версиях perl-а - одно и то же. > > > > -- > > С уважением, > > Вадим Власов > > т.: +7 (916) 424-00-72 > > > > -- > > Moscow.pm mailing list > > [email protected] | http://moscow.pm.org > > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > -- С уважением, Вадим Власов т.: +7 (916) 424-00-72
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
