Summary: | Floating point exceptions with many built-in printer drivers | ||
---|---|---|---|
Product: | Ghostscript | Reporter: | Till Kamppeter <till.kamppeter> |
Component: | Printer Driver | Assignee: | Ray Johnston <ray.johnston> |
Status: | NOTIFIED FIXED | ||
Severity: | normal | ||
Priority: | P4 | ||
Version: | 8.63 | ||
Hardware: | PC | ||
OS: | Linux | ||
Customer: | Word Size: | --- | |
Attachments: |
testprint.ps
walking-map-portland-1.pdf |
Description
Till Kamppeter
2008-10-15 01:11:42 UTC
Created attachment 4507 [details]
testprint.ps
PostScript sample file
Created attachment 4508 [details]
walking-map-portland-1.pdf
PDF sample file
Assigning to Marcos to find the point of regression (they used to work). Looks like the multi-thread renderer broke this; r8721 is the first revision that fails: r8721 | ray | 2008-05-08 19:18:14 -0700 (Thu, 08 May 2008) | 49 lines This is the "final" merge of the mtrender (multi-threaded clist rendering) branch into the trunk. The default behavior is still the same, i.e., the clist rendering is done in the same thread as the parsing (main thread). The problem is with devices that use the contrib/lips4/gdevlprn.h header files. The lp_duplex_device_body_rest_ and lp_device_body_rest_ macros that initialized the prn_device structure 'common' elements were out of data with respect to the revision in the gx_device_printer_s structure made for the multi-threaded rendering. I restructured the prn_device_body_rest2_ in base/gdevprn.h so that the contrib/lips4/gdevlprn.h initialization macro could use this to minimize the likelihood of bit rot in the future. I did a search for other devices that might have the same problem and did not find them (although I may have missed them). patch committed as rev 9192. |