Apache OpenOffice (AOO) Bugzilla – Issue 17966
print queue error handling ...
Last modified: 2004-09-10 12:23:34 UTC
Hi there, So - it seems this patch makes my 'error handling' somewhat nicer. It turns out that I can quickly detect when my print has failed, and would like to propagate that to the user. This caused problems though; since invoking 'Error' crashed nastily since AbortJob had destroyed the underlying objects it was returning to down the stack (it seems): (gdb) bt #0 0x475846c7 in SfxPrintProgress::LinkStubPrintErrorNotify(void*, void*) (pThis=0x4a18ee60, pCaller=0x4a8b7390) at /opt/OpenOffice/openoffice/build/RC3_030729/solver/645/unxlngi4.pro/inc/so3/persist.hxx:241 #1 0x401837dd in Printer::Error() (this=0x47db3428) at /opt/OpenOffice/openoffice/build/RC3_030729/solver/645/unxlngi4.pro/inc/tools/link.hxx:159 #2 0x401351a5 in ImplQPrinter::ImplPrintHdl(Timer*) (this=0x4a92bd68) at /opt/OpenOffice/openoffice/build/RC3_030729/vcl/source/gdi/impprn.cxx:354 #3 0x401350ba in ImplQPrinter::LinkStubImplPrintHdl(void*, void*) (pThis=0x47db3428, pCaller=0x47db3428) at /opt/OpenOffice/openoffice/build/RC3_030729/vcl/source/gdi/impprn.cxx:340 #4 0x400ecc43 in Timer::Timeout() () from /opt/PPInstall/program/libvcl645li.so #5 0x400ec992 in ImplTimerCallbackProc() () from /opt/PPInstall/program/libvcl645li.so #6 0x402b4112 in SalData::Timeout() const () from /opt/PPInstall/program/libvcl645li.so #7 0x402b3c60 in SalXLib::CheckTimeout(bool) () from /opt/PPInstall/program/libvcl645li.so #8 0x402b3f55 in SalXLib::Yield(unsigned char) () from /opt/PPInstall/program/libvcl645li.so #9 0x402bcfbc in SalInstance::Yield(unsigned char) () from /opt/PPInstall/program/libvcl645li.so #10 0x400e70a1 in Application::Yield() () from /opt/PPInstall/program/libvcl645li.so #11 0x400e6fb3 in Application::Execute() () from /opt/PPInstall/program/libvcl645li.so #12 0x080651d4 in desktop::Desktop::Main() () Also, I couldn't see any other code calling 'Error' to see how to set this up correctly. Either way - my patch appears to work; although it may leak like a sieve ;-) I guess we possibly need to split common code out of PrnMon's EndPrintNotify to use in PrintErrorNotify as well, but got way out of my depth. Either way - this helped me, comments appreciated.
Created attachment 8308 [details] don't destroy the objects underneath our error callback - needs work.
(see last comment)
oops, reassigne wrong issue. Sorry.
cp->pl: please have a look at it ...
started
fixed in CWS vcl25; i committed only the vcl part as the sfx part does not seem to make sense
verified in CWS vcl25
merged in 680m54