[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]
- To: <tribble@xxxxxxxxxxx>
- Subject: RE>cleanupGarbage
- From: heh <heh@xxxxxxxxxx>
- Date: 7 Aug 90 09:27:56
- Cc: <xtech@xxxxxxxxxx>
Reply to: RE>cleanupGarbage
I just checked again. We need to have cleanupGarbage routines.
The Reason: <ta ta dum!>
By running linkTime, ALL linkTimeNonInherited's get run. Ok, so what?
Well, many, many of these do something like:
EmptySet _ NULL.
theSpace _ NULL.
ooooooooch! After this happens, NO code runs. (well, none of ours, and
we use a bit of it in the browser code).
So, the reason to use cleanupGarbage (and not linkTime) is to reinitialize
ONLY those globals (fluids, etc) that end up hanging onto lots of garbage after
a test. You can call linkTime(Non)*Inherited or initTime... as
appropriate in the cleanupGarbage.
Just calling all the linkTime's breaks stuff, calling cleanupGarbage releases
Received: by xanadu.com; 6 Aug 90 22:51:30
Received: by xanadu (4.1/SMI-4.0.2) id AA02366; Mon, 6 Aug 90 11:38:24 PDT
Date: Mon, 6 Aug 90 11:38:24 PDT
From: xanadu!tribble (Eric Dean Tribble)
Message-Id: <9008061838.AA02366@xanadu >
Cc: heh@xxxxxxxxxx, xtech@xxxxxxxxxx
In-Reply-To: eric@son-of-blob's message of Sun, 5 Aug 90 13:30:45 PDT
I just checked. There are a few examples where we have cleanupGarbage
and no linkTime, and vice-versa. Implement a cleanupGarbage method in
DocTester that runs the linkTime behavior, then any backend constructs
don't require cleanupGarbage. cleanupGarbage is still required for
caches and such that we put into our tools.