Summary: | Regression: Several files broke with r10324 | ||
---|---|---|---|
Product: | GhostPCL | Reporter: | Marcos H. Woehrmann <marcos.woehrmann> |
Component: | PDF Writer | Assignee: | Henry Stiles <henry.stiles> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | henry.stiles, ken.sharp |
Priority: | P4 | ||
Version: | master | ||
Hardware: | PC | ||
OS: | Linux | ||
Customer: | Word Size: | --- | |
Attachments: |
rf_stroke.pcl
rf_fill.pcl |
Description
Marcos H. Woehrmann
2010-07-26 18:12:22 UTC
Created attachment 6587 [details]
rf_stroke.pcl
pattern stroke color produces bad pdf
pcl6 -sDEVICE=pdfwrite -sOutputFile=stroke.pdf rf_stroke.pcl
Created attachment 6588 [details] rf_fill.pcl This file is nearly the same as attachment 6587 [details] except it uses a fill instead of a stroke and it works correctly! (In reply to comment #2) > This file is nearly the same as attachment 6587 [details] except it uses a fill instead > of a stroke and it works correctly! When we get to the end of job with the stroke file the curr_device has a reference count of 2, which means we don't count down the pdfwrite device to 0 and free it, so we don't write out the final contents and xref. The fill file has a reference count of 1, so its OK. Its yet another reference counting problem, I guess I haven't tracked strokes down with this problem yet, I think most of the examples so far have been pattern fills. (In reply to comment #2) > Created an attachment (id=6588) [details] > rf_fill.pcl > > This file is nearly the same as attachment 6587 [details] except it uses a fill instead > of a stroke and it works correctly! It also has a different PaintType. In gxpcmap.c, gx_pattern_load, pinst->template.PaintType is 1 for the fill and 2 for the stroke. According to the comments in pattern_accum_open PaintType 1 == colored and PaintType 2 == uncolored. However, making that 1 in the debugger doesn't solve the reference counting problem. (In reply to comment #4) > (In reply to comment #2) > > Created an attachment (id=6588) [details] [details] > > rf_fill.pcl > > > > This file is nearly the same as attachment 6587 [details] [details] except it uses a fill instead > > of a stroke and it works correctly! > > It also has a different PaintType. In gxpcmap.c, gx_pattern_load, > pinst->template.PaintType is 1 for the fill and 2 for the stroke. According to > the comments in pattern_accum_open PaintType 1 == colored and PaintType 2 == > uncolored. > > However, making that 1 in the debugger doesn't solve the reference counting > problem. Sorry to bother you with this one ken, definitely was my bug - fixed in revision 11591. |