I actually can think of a possible reason... if the OS is using a loop with
DmGetNextDBByTypeCreator() with the newSearch set to FALSE, as I imagine it
is, then the search mechanism will fail b/c the searchInfoType structure
seems to be invalidated if a database is deleted behind its back.

I ran into this when making my TrashCan plugin; I loop thru all DB's with a
given creator, DmDeleteDatabase()'ing each one. Well, it crashes unless I
set the newSearch command to TRUE any time I actually delete a Database.
Just some personal observations...


Alan Pinstein
Synergy Solutions, Inc.
http://www.synsolutions.com
1-800-210-5293


>At 8:25 AM -0800 3/9/99, Scott Johnson wrote:
>>This would even plug a sort of hole in the system -- currently you can't
>>even call DmDeleteDatabase during a reset launch code because it screws
>>up the launch code broadcast loop itself, causing a crash.  (At least it
>>did for me in 3.0.)  So my wipeout code must call DmRemoveResource on
>>all the individual records, which is bigger and slower.
>
>I can't think of any reason why DmDeleteDatabase would crash during a reset
>launch code loop.  Maybe you accidently tried to use some global variable?
>I'd love to see the stack trace for this.
>
>                               --Bob



Reply via email to