Hi ,all 

  I report a bug in 19,jan "can libwww-perl run on intel xscale platform
" . from that , I get some useful information from WebPages and some
friends suggestion.

  Now , the segmentation fault has been fix .

  The "-O2" optimize in compile cause these bug. Omit these optimize can
fix the bug , the segmentation haven't been occurs.

  But now the other problems is that ,I still can't communication with
Web servers when we use libwww-perl modules on our target device (intel
xscale platform ,big edian)

  The program will block in can_write function in IO/Select.pm 

  sub can_write


 my $vec = shift;

 my $timeout = shift;

 my $w = $vec->[VEC_BITS];

 defined($w) && (select(undef,$w,undef,$timeout) > 0)

    ? handles($vec, $w)

: ();


The select(undef,$w,undef,$timeout) function will be block all the time
until timeout and return 0. That is also to say these select function
can't been successful .so this is the reason why our target device can't

With Web Severs. But why ? because the big endian and little endian
can't been converted ? so I don't know how can fix this bug?


Our program is also the same with last time:


        use  LWP::UserAgent;

        my $browser=LWP::UserAgent->new;

        my $url=$ARGV[0];

        my $response=$browser->get($url);

        die "can't get $url --",$response->status_line

                unless $response->is_success;

        die "hi i want html not ",$response->content_type

                unless $response->content_type eq 'text/html';

         (open(OUTFILE ,">html"))||  die ("could't open the file\n");

        print  OUTFILE ($response->content);


and thest program will been block at select() function in IO/Select.pm 


I am looking forward to your replying 

Thank you 




Wu Liu





Reply via email to