Bug 692361 - Regression: commit 4c6809 causes file to error
Summary: Regression: commit 4c6809 causes file to error
Status: NOTIFIED FIXED
Alias: None
Product: Ghostscript
Classification: Unclassified
Component: PDF Interpreter (show other bugs)
Version: master
Hardware: PC Linux
: P1 blocker
Assignee: Alex Cherepanov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-07-20 16:07 UTC by Chris Liddell (chrisl)
Modified: 2011-11-25 04:11 UTC (History)
1 user (show)

See Also:
Customer: 531
Word Size: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Liddell (chrisl) 2011-07-20 16:07:18 UTC
Commit:
4c6809dfa1c539d757c30f572922e05cd1436698

"    Bug 692252: Trap contents stream errors
    
    Run PDF operator streams in a stopped context. Stop processing of the
    stream on error, but continue to process rest of the file. Remove a
    hack that defined 'inf' as 0."

Causes the attached file to error out where it continued to run (despite the AES stream problems) prior to that.

It errors with:
+ ./base/saes.c:172: s_aes_process(): aes stream isn't a multiple of 16 bytes
   **** Error reading a content stream. The page may be incomplete.
   **** Error reading a content stream. The page may be incomplete.
   **** Error reading a content stream. The page may be incomplete.
Error: /typecheck in --run--
Operand stack:
   --dict:8/17(L)--   1   10   3   4   13   7   -1   --nostringval--   9   --dict:87/87(ro)(G)--
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   1910   1   3   %oparray_pop   1909   1   3   %oparray_pop   1893   1   3   %oparray_pop   --nostringval--   --nostringval--   2   1   15   --nostringval--   %for_pos_int_continue   --nostringval--   --nostringval--   false   1   %stopped_push   --nostringval--
Dictionary stack:
   --dict:1160/1684(ro)(G)--   --dict:1/20(G)--   --dict:82/200(L)--   --dict:82/200(L)--   --dict:108/127(ro)(G)--   --dict:292/300(ro)(G)--   --dict:24/30(L)--   --dict:6/8(L)--   --dict:22/40(L)--   --dict:5/5(L)--   --dict:1/1(ro)(G)--   --dict:4/5(L)--   --dict:3/5(L)--
Current allocation mode is local
Last OS error: 2
GPL Ghostscript GIT PRERELEASE 9.03: Unrecoverable error, exit code 1
Comment 2 Chris Liddell (chrisl) 2011-07-20 16:10:55 UTC
Made P1 as it's a customer problem and a regression.
Comment 3 Alex Cherepanov 2011-07-23 03:39:47 UTC
Thap errors thrown by --token--, adjust the stack, and rethrow.
Rev. 4c6809dfa1c539d757c30f572922e05cd1436698 made the errors
that occur during reading of the contents steam recoverable,
but missed the case, when the error happens in the --token--.

The patch has been committed as:
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=4c2a089d0378402f374cb9004ac0faa3ff82d3c3