blob: ad88105864aaec5a75b47e5f2765907459a23a58 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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;
|