Apache OpenOffice (AOO) Bugzilla – Issue 108138
crash with non-initialized PrinterGraphics
Last modified: 2017-05-20 10:23:56 UTC
Something with printing and/or meta-file handling must have changed between the OOO320 branch-off point and DEV300_m68 as printing even trivial documents results in a crash. In the stack I'll attach the problem is simply that in an if-printer branch the OutputDevice::mpGraphics member is used without checking that the pointer is non-NULL. Since that code there is ancient (from the original OOo CVS import) I suspect there are many other unchecked accesses. @pl and @aw: either we find the change in the CWS that changed metafile-handling and/or printing or we have to check every printing-related mpGraphics access...
Created attachment 67064 [details] reduced bugdoc
Here is the relevant stack-excerpt for the invalid PrinterGraphics access through the NULL pointer: #0 0xf6dabba4 in OutputDevice::ImplInitClipRegion (this=0xed5852c0) at /net/so-cwsserv01/export/cws/vcl109/DEV300/ooo/vcl/source/gdi/outdev.cxx:1091 #1 OutputDevice::DrawTextArray (this=0xed5852c0, rStartPt=@0xedff1d0c, rStr=@0xedff1d14, pDXAry=0xed5a9128, nIndex=0, nLen=1) at vcl/source/gdi/outdev3.cxx:5605 #2 MetaTextArrayAction::Execute (this=0xedff1d00, pOut=0xed5852c0) at vcl/source/gdi/metaact.cxx:1371 #3 0xf6e4a7a8 in ImplQPrinter::ImplPrintMtf () #4 0xf6e4a93b in ImplQPrinter::ImplPrintHdl ()
Isolating the problem further shows that the problem happens at least since DEV300_m66. OOO320_mX and <=DEV300_m65 do not have the problem. One of the CWSses that were integrated for DEV300_m66 but not into OOO320 must be the culprit: buildtool07, calc32stopper4, cmcfixes64, controltextrendering, hr67, impress180, jl133, jl139, linuxhppa1, native271, ooo32gsl01, ooo32gsl02, sw33bf01, writerfilter32bugfixes01, dev300m66masterfix It's "only" 156 commits, 255 changed files and 22000 changed lines...
Found the commit http://hg.services.openoffice.org/DEV300/diff/f622379e3c76/vcl/source/gdi/outdev3.cxx to be the culprit...
Fixed in CWS vcl108.
.
@hi: please verify in CWS vcl108
Verified with cws vcl108 = ok
*** Issue 108652 has been marked as a duplicate of this issue. ***