diff options
Diffstat (limited to 'Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al')
-rw-r--r-- | Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al b/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al new file mode 100644 index 00000000000..ad88105864a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al @@ -0,0 +1,27 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 292 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\_store_fd.al)" +# Internal store routine on opened file descriptor +sub _store_fd { + my $xsptr = shift; + my $self = shift; + my ($file) = @_; + logcroak "not a reference" unless ref($self); + logcroak "too many arguments" unless @_ == 1; # No @foo in arglist + my $fd = fileno($file); + logcroak "not a valid file descriptor" unless defined $fd; + my $da = $@; # Don't mess if called from exception handler + my $ret; + # Call C routine nstore or pstore, depending on network order + eval { $ret = &$xsptr($file, $self) }; + logcroak $@ if $@ =~ s/\.?\n$/,/; + local $\; print $file ''; # Autoflush the file if wanted + $@ = $da; + return $ret ? $ret : undef; +} + +# end of Storable::_store_fd +1; |