GNU bug report logs -
#20802
Segfault when showing non-GTK+ tooltip
Previous Next
Reported by: Tobias Getzner <tobias.getzner <at> gmx.de>
Date: Sat, 13 Jun 2015 09:19:02 UTC
Severity: normal
Tags: moreinfo
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #104 received at 20802 <at> debbugs.gnu.org (full text, mbox):
> Date: Thu, 18 Jun 2015 15:37:20 +0200
> From: martin rudalics <rudalics <at> gmx.at>
> CC: tobias.getzner <at> gmx.de, 20802 <at> debbugs.gnu.org
>
> > Why can't we simply move the code that frees the image cache to
> > delete_terminal? There's only one image cache for each terminal, and
> > it's shared by all frames on that terminal, right? And we call
> > delete-terminal when we delete the last frame on the terminal, right?
>
> ‘delete-terminal’ can run into precisely the same problem I described in
> my previous scenario. IMHO we have to give up the idea of using
> refcounts to tell whether a frame might still use some object - they are
> not up to this task.
These are 2 different issues.
Do you agree that there's no need to decide whether we should free the
image cache while deleting a frame, and instead do that when we delete
a terminal? If you agree, we should move the code that frees the
image cache there.
If, in addition, you are saying that we will sometimes delete a
terminal when it still has live frames, then we could simply count the
frames on a terminal instead of using a refcount. Something like this
(we already have similar code in delete_frame):
count = 0;
FOR_EACH_FRAME (tail, frame1)
if (FRAME_TERMINAL (XFRAME (frame)) == FRAME_TERMINAL (XFRAME (frame1)))
count++;
This bug report was last modified 3 years and 32 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.