Project

General

Profile

Bug #11043

NPE in SAX-PARSE if the file does not exist

Added by Constantin Asofiei 7 months ago. Updated 6 months ago.

Status:
Closed
Priority:
Normal
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:
production:
No
env_name:
topics:

History

#2 Updated by Constantin Asofiei 7 months ago

This test fails with NPE if the file does not exist:

def var h as handle.
create sax-reader h.
h:entity-expansion-limit = ?.
h:handler = this-procedure.
h:set-input-source("file", "doesnotexist.txt").
output to a.txt.
h:sax-parse() no-error.
message error-status:error error-status:get-message(1).

do on error undo, leave:
h:sax-parse().
message "here".
end.
output close.

#3 Updated by Ovidiu Maxiniuc 7 months ago

  • Assignee set to Ovidiu Maxiniuc
  • Status changed from New to WIP

#4 Updated by Ovidiu Maxiniuc 7 months ago

  • % Done changed from 0 to 100
  • Status changed from WIP to Review
  • reviewer Constantin Asofiei added

The absence of file, signalled by a legacy file not found error was ignored, causing the internal data of SaxReaderImpl to become corrupted, causing the NPE.
Intercepted file-not-found condition and handled it to match legacy 4GL behaviour. Tested both positive and negative cases and the result were successful,

Created branch 11043a and committed the changes. Please review.

#5 Updated by Constantin Asofiei 7 months ago

  • Status changed from Review to Internal Test

Beside this catch (UnsupportedOperationException | IOException e) which should have each type on its own line, the changes are OK.

#6 Updated by Ovidiu Maxiniuc 7 months ago

Done. Committed revision 16329.
Should I merge this into 9457c?

#7 Updated by Constantin Asofiei 7 months ago

Ovidiu Maxiniuc wrote:

Should I merge this into 9457c?

Is on my list, I'll do it. Thanks.

#8 Updated by Ovidiu Maxiniuc 6 months ago

Branch 11043a was rebased to trunk/16359. Pushed up to revision 16361.

#9 Updated by Constantin Asofiei 6 months ago

  • Status changed from Internal Test to Merge Pending

Merge after 11007a

#10 Updated by Ovidiu Maxiniuc 6 months ago

  • Status changed from Merge Pending to Test

Branch 11043a was merged to trunk rev 16401 and archived.

#11 Updated by Constantin Asofiei 6 months ago

  • Status changed from Test to Closed

Also available in: Atom PDF