Re: Building XML-Xerces-2.3.0-3 on Windows

Martin Raspe <[email protected]>
Newsgroups gmane.text.xml.xerces-p.devel
Message-ID <[email protected]>
Jason E. Stewart wrote:

>>t\Schema..................ok 3/3
>>
>>Handling Unknown exception, <IN> chunk 1.
>># Looks like your test died just after 3.
>>t\Schema..................dubious
>>         Test returned status 255 (wstat 65280, 0xff00)
>>         after all the subtests completed successfully
>>
>>Test 3 says: "Resolver: Couldn't create input source for entity:
>>No matching function for overloaded 'new_LocalFileInputSource' at
>>Xerces.pm line 1786."
> 
> 
> Once again this message happens because the constructor gets called
> without a filename - which means that the EntityResolver actually
> failed to resolve things.
> 
> Could you activate the print statements in the test code and run it
> again? 

If I put a "print $@" after each eval and run the test separately then 
it passes ok ...

D:\Src\XML-Xerces-2.3.0-3> perl t/schema.t

1..3
ok 1 - module loaded
ok 2
ok 3
FATAL ERROR:
FILE:    FAKE_SYSTEM_ID
LINE:    41
COLUMN:  6
MESSAGE: Expected end of tag 'personnel'
  at t/schema.t line 50
Handling Unknown exception, <IN> chunk 1.
# Looks like your test died just after 3.

(I'm not sure if the last two lines are correct.)

>>t\URLInputSource..........dubious
>>         Test returned status 2 (wstat 512, 0x200)
>>DIED. FAILED tests 6, 8
>>         Failed 2/8 tests, 75.00% okay
>>
>>In Test 6 $error->GetCode() returns 0 (correct: 105).
>>In Test 8 $error->GetCode() returns 101 (correct) if called
>>immediately, later 67114035.
> 
> 
> sounds like serious problems in the exception handling code.
> 
> 
>>It seems the error code somehow gets lost or overwritten when the
>>$error object is referenced again. If you reverse the arguments in the
>>"ok" clause as follows it passes the test:
>>
>>ok($error->getCode() == $XML::Xerces::XMLExcepts::URL_NoProtocolPresent
>>&&
>>UNIVERSAL::isa($error,'XML::Xerces::XMLException')
>>&&
>>$error);

> That will be a big problem for handling exceptions - the above code
> will die if the error isn't an exception object...

Yes, I just wanted to show that the code is returned correctly if called 
first. May be the reason is that the exception handling code itself 
raises an exception.

Martin
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.