summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al
blob: b25d7b009c327e793811933977398d847187e574 (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
# 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;