[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: feature/igc: Lisp finalizers not run
From: |
Gerd Möllmann |
Subject: |
Re: feature/igc: Lisp finalizers not run |
Date: |
Wed, 21 May 2025 14:36:19 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Pip Cet <pipcet@protonmail.com> writes:
> The current feature/igc branch doesn't appear to run Lisp finalizers.
> The problem is that alloc.c keeps finalizers in a doubly-linked list,
> and igc currently treats this list as strong.
Oops :-).
> That means Lisp finalizers will always be reachable through strong
> references, so they will never become unreachable, so MPS will never
> call its finalization function which resurrects the Lisp finalizer and
> lets us call the Lisp function therein.
>
> I think this patch should be good enough to fix font cleanup for both
> traditional GC and the MPS builds by using finalizers. As font objects
> can be fairly expensive, consing up a finalizer handler for each font
> seems an acceptable price.
LGTM, but how get fonts into the picture?