in reply to LWP::Simple, a bug in head() function?

Odd. Doing this:
#!/usr/bin/perl -w use strict; use LWP::Simple; my @list; foreach (head $ARGV[0]) { push @list, $_; print "Undefined\n" unless defined $_; } print scalar @list, "\n"; my ($content_type, $document_length, $modified_time, $expires, $server +) = @list; print ">>$content_type<< "; print ">>$document_length<< "; print ">>$modified_time<< "; print ">>$expires<< "; print ">>$server<<\n";
doesn't give me any undefineds, and it shows the length of @list as 4 items. There's no expiration set, at least for the web pages I tried. I would call this a bug in the documentation or the behavior of the module (as I tried it for IIS and Apache).

Replies are listed 'Best First'.
RE: Re: LWP::Simple
by capa (Initiate) on Mar 15, 2000 at 22:06 UTC
    well... look at this:
    bash:~$ ./1.pl http://localhost/tmp/
    Undefined
    3
    Use of uninitialized value at ./1.pl line 17.
    Use of uninitialized value at ./1.pl line 19.
    Use of uninitialized value at ./1.pl line 20.
    >>text/html<< >><< >>Apache/1.3.9 (Unix) Debian/GNU PHP/3.0.14<< >><< >><<
    
    note that this url produce an index of tmp/ directory.

    and after run your script (modified):
    #!/usr/bin/perl -w
    use strict;
    use LWP::Simple;
    
    my @list;
    my $i = 0;
    foreach (head $ARGV[0]) {
        $i++;
        push @list, $_;
        print "$i: Undefined\n" unless defined $_;
    }
    
    print scalar @list, "\n";
    my ($content_type, $document_length, $modified_time, $expires, $server) = @list;
    print ">>$content_type<< ";
    print ">>$document_length<< ";
    print ">>$modified_time<< ";
    print ">>$expires<< ";
    print ">>$server<<\n";
    


    get this output:
    bash:~$ ./1.pl http://localhost/tmp/
    2: Undefined
    3
    Use of uninitialized value at ./1.pl line 19.
    Use of uninitialized value at ./1.pl line 21.
    Use of uninitialized value at ./1.pl line 22.
    >>text/html<< >><< >>Apache/1.3.9 (Unix) Debian/GNU PHP/3.0.14<< >><< >><<
    
    So... it is a bug?
    Thanks.