diff options
Diffstat (limited to 'Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al')
-rw-r--r-- | Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al new file mode 100644 index 00000000000..b25d7b009c3 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al @@ -0,0 +1,25 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 387 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\fd_retrieve.al)" +# +# fd_retrieve +# +# Same as retrieve, but perform from an already opened file descriptor instead. +# +sub fd_retrieve { + my ($file) = @_; + my $fd = fileno($file); + logcroak "not a valid file descriptor" unless defined $fd; + my $self; + my $da = $@; # Could be from exception handler + eval { $self = pretrieve($file) }; # Call C routine + logcroak $@ if $@ =~ s/\.?\n$/,/; + $@ = $da; + return $self; +} + +# end of Storable::fd_retrieve +1; |