[Date Prev][Date Next][Thread Prev][Thread Next][Thread Index]
RE: [XaraXtreme-dev] File => Close crashes
- From: Martin Wuerthner <lists@xxxxxxxxxxxxxxx>
- Date: Wed, 05 Apr 2006 17:31:19 +0200
- Subject: RE: [XaraXtreme-dev] File => Close crashes
In message <7ce8d9124e.martin@xxxxxxxxxxxxxxxxxxx>
Martin Wuerthner <lists@xxxxxxxxxxxxxxx> wrote:
> [crashes on File => Close]
Further information to provoke the problem: Here, the crash always
occurs when having two or more documents loaded and removing one of
them using File => Close.
> The crash is caused by the text tool trying to remove the blobs from
> the non-existing window in TextInfoBarOp::Message. When it gets a view
> change message it calls GetVisibleSpread() on the old view. I presume
> the IsScreenCamView() call that was removed (see the portnote in line
> 2602) was meant to prevent the problem. Somehow we need a way to
> distinguish between a dead old view and a live old view. Apparently,
> testing oOldView against NULL does not do that.
The call to GetClientSize that leads to the crash occurs in various
places in the code when processing DocViewMsg(SELABOUTTOCHANGE), which
is broadcast by SetSelectedViewAndSpread when one of the files is
closed. Usually, the text tool is the first to crash (by the way, it
responds to the message even when not being the current tool, surely
that is wrong anyway?), but the same problem exists in other places,
too, e.g., BlobManager::Message when there are selected objects on the
view that is deleted.
Martin