At 04:30 PM 2/15/00 -0600, [EMAIL PROTECTED] wrote:
>      Hi.
>
>      I have an interesting problem... the XML parser tests are failing on
>      my Alpha 7.2 machine due to 'badly formed XML'. When I dig deeper, the
>      Parser.pm module's "parsefile()" function is opening an XML file, then
>      doing a "binmode()" on it. If I do a test of:
>
>      $crud = scalar <FILE>;
>
>      before the binmode() call, it returns one input line. However, if I do
>      this after the binmode() call, $crud holds the entire content of the
>      file -- "\n" is no longer recognised as a line terminator.

What's probably going on is that your file isn't a Stream format file, but 
VFC or variable or something of the sort, so there really aren't an 
newlines in there--they're inserted automagically by RMS and/or the C 
runtime library. Binmode reopens the file so perl sees the raw bytes on 
disk, pretty much completely bypassing RMS. Handy if you want to mess with 
the length bytes or something, but generally it really sucks for other 
things. :)

Try hacking the module so it doesn't binmode and see if that works better.

                                        Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to