Skip to content

Commit

Permalink
Merge pull request #1 from xvoidsquadx/patch-1
Browse files Browse the repository at this point in the history
Story::Interact::State should compress states when exporting
  • Loading branch information
tobyink committed Jun 12, 2023
2 parents 6db305d + d3b975c commit 3fa6612
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions lib/Story/Interact/State.pm
Original file line number Diff line number Diff line change
Expand Up @@ -79,14 +79,21 @@ sub dump {
my ( $self ) = @_;
require Storable;
require MIME::Base64;
return MIME::Base64::encode_base64( Storable::nfreeze( $self ) );
require Compress::Bzip2;
my $frozen = Compress::Bzip2::memBzip( Storable::nfreeze( $self ) );
return MIME::Base64::encode_base64( $frozen );
}

sub load {
my ( $class, $data ) = @_;
require Storable;
require MIME::Base64;
return Storable::thaw( MIME::Base64::decode_base64( $data ) );
require Compress::Bzip2;
my $frozen = MIME::Base64::decode_base64( $data );
if ( my $unzipped = Compress::Bzip2::memBunzip($frozen) ) {
return Storable::thaw( $unzipped );
}
return Storable::thaw( $frozen );
}

1;

0 comments on commit 3fa6612

Please sign in to comment.