LPARAMETERS data, effect, button, shift, x, y DODEFAULT() LOCAL oNode oNode=this.Hittest(x/96*1440,y/96*1440) IF TYPE("oNode")="O" AND !ISNULL(oNode) *--Selected a node on the right (policy or name) this.DropHighlight = oNode IF !EMPTY(thisform.tpolicy) THIS.nodeclick(onode) RETURN thisform.cmdmove.click() ENDIF ELSE *--Did not select a policy or name on the right (no node selection) IF !EMPTY(thisform.tpolicy) RETURN thisform.cmdadd.click() && see note below!! ENDIF ENDIF *NOTE: if the user clicks on the item in tree1 and then clicks on an item * in tree2 and clicks on the cmdadd button, everything runs fine and * no c5 error occurs. The form only closes if all items in the tree1 * have been processed and the same code is run when the user clicks * on cmdadd and when he/she uses the mouse to drag/drop.There is only one other object that is created in the process run from the cmdadd button and it is a progress window. I check for it and release it if it exists before the form is released. I thought not releasing that object was causing my c5 error but it is still ocurring.