Bug 657783
| Summary: | [abrt] SwRenderData points to dead ViewShell after canceled print | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | tomas <rouckat> | ||||
| Component: | openoffice.org | Assignee: | Caolan McNamara <caolanm> | ||||
| Status: | CLOSED NEXTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | low | ||||||
| Version: | 14 | CC: | caolanm, dtardon, pavel1r | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | x86_64 | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | abrt_hash:00847740774bef398cb25064c9ac084df541bdcb | ||||||
| Fixed In Version: | openoffice.org-3.3.0-20.7.fc14 | Doc Type: | Bug Fix | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2012-03-27 09:57:21 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
|
Description
tomas
2010-11-27 21:28:17 UTC
Created attachment 463276 [details]
File: backtrace
I think I know how that happened. The SwRenderData object is only cleaned up when the last page is printed, not when print is cancelled, which means it tries to use already dead ViewShell later when it is destroyed (which happens on exit, or, presumably, on subsequent print). There are several places in VCL that try to avoid that by faking printing of the last page. I have a rough patch somewhere that derives the SwRenderData from SfxListener registered at its ViewShell, so it can clean up itself when the ViewShell is destroyed, which should be better solution (I really think this is an impl. detail that has no business being exposed outside of its module.) Bah, this isn't as simple as I imagined :-( I can avoid the crash just fine, but I haven't found any way to restore the original view settings after a cancelled print without the VCL workaround yet... Anyway, the crash after cancelling a print job I mentioned in my previous comment has been fixed at least since 3.3.0-14.1 (Philip has also moved all the workaround code to one place, which is nice), so the situation is not as bad as I thought. I'll return to this later, hopefully with some fresh idea. It would help if I knew how it happened: do you remember what you were doing before the crash? (You can speak Czech :-) I'm sorry. I mean, that OOO crashed in the start time without print. I remember nothing about cancelling a print job. Since this time goes OOO and print well. I don't know, how to reproduce this problem. I mean, that in the my system may be a bug. F14 is upgrade from F13 and a few packages stay from fc13. Well, the backtrace is clearly from update of print preview in the print dialog. *** Bug 666641 has been marked as a duplicate of this bug. *** This may be http://cgit.freedesktop.org/libreoffice/core/commit/?id=cd690d2e72be410058376c416a40ff5d918fb0f7 i.e. the "selection" option makes a temp document with a temp viewshell which can go away when you click through the options. yeah, I think it is, I'll backport this fix will try that in >= openoffice.org-3.3.0-20.7.fc14 Fedora 14 is EOL |