Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!thunder.mcrcim.mcgill.edu!snorkelwacker.mit.edu!apple!usc!wuarchive!uwm.edu!linac!att!cbfsb!cbnewsc!gregg From: gregg@cbnewsc.att.com (gregg.g.wonderly) Newsgroups: comp.sys.amiga.tech Subject: Re: Shared IDCMP ports Message-ID: <1991Jan17.215456.4159@cbnewsc.att.com> Date: 17 Jan 91 21:54:56 GMT References: <1991Jan13.084228.25939@macc.wisc.edu> Organization: AT&T Bell Laboratories Lines: 35 From article <1991Jan13.084228.25939@macc.wisc.edu>, by gilmore@macc.wisc.edu (Neil Gilmore): > I also had a problem with shared IDCMP ports, even though I was > (apparently) doing everything correctly. > My problem turned out > to be that I was using the menu to select when to close a window, the > window which generated the message. Unfortunatly, I was using the real > message, not a copy, and replying at the end of an event loop. > Now, I copy the > message and Reply() immediately, and haven't crashed since on closing a > window. I had a problem like this too... Now I realize why all of the RKM examples are written as class = imsg->Class; gadgptr = (struct Gadget *)imsg->IAddress; ...etc ReplyMsg( (struct Message *)imsg ); switch( class ) { case MENUPICK: ... break; case GADGETUP: ... break; ...etc } They really seem to be suggesting that you should reply to the packet before you proceed! -- ----- gregg.g.wonderly@att.com (AT&T bell laboratories)