Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!cs.utexas.edu!uunet!microsoft!ericsc From: ericsc@microsoft.UUCP (Eric Schlegel) Newsgroups: comp.sys.mac.programmer Subject: Re: Doing horrible things to resource files Message-ID: <6021@microsoft.UUCP> Date: 13 Jun 89 15:07:58 GMT References: <50967@tut.cis.ohio-state.edu> <7547@hoptoad.uucp> <4972@umd5.umd.edu> <51276@tut.cis.ohio-state.edu> <7578@hoptoad.uucp> <2285@etive.ed.ac.uk> Reply-To: ericsc@microsoft.UUCP (Eric Schlegel) Organization: Microsoft Corp., Redmond WA Lines: 24 In article <2285@etive.ed.ac.uk> nick@lfcs.ed.ac.uk (Nick Rothwell) writes: >Funny this should come up... only yesterday I was playing with >Microsoft (acht...ptui) Excel. I launched it, and GateKeeper reported >that Excel had done a SetResAttr() on CDEF 1 in the System file. Of >all the spaced-out brain-dead.... Why??? After observing the same behavior, I asked someone in the know here at Microsoft. It turns out that this CDEF used to have its resPurgeable bit set in old System files. Under low-memory conditions when a DA which used this CDEF was running along with Excel, the CDEF would be purged. The next time the DA tried to use the CDEF it would crash, taking Excel with it. So the SetResAttr() makes the CDEF unpurgeable so that everybody's happy. Note that I'm not advocating this, just reporting what I was told... A further note: a quick check in my 6.0.3 System reveals that this CDEF still has its purgeable bit set. So perhaps this problem still exists, I don't know. Eric Schlegel -------------------- Disclaimer: I'm just summer co-op slime. Nobody with any self-respect at Microsoft would ever claim that my opinions were those of MS.