A user called me about an error the other day, if they try to close the app with one particular form open, they get the standard "Do you want to save changes?" message followed by error 1924, "LOFORM is not an object", in goApp.oForms.CloseAllForms line 83.
If I close the app with File|Exit or a toolbar exit button, I'm allowed to debug it, but if the X is used, VFP returns he message "CANCEL or SUSPEND is not allowed."
From oForms.CloseAllForms:
IF loForm.QueryUnload()
83 loForm.Release()
ELSE
_SCREEN.MousePointer = MOUSE_DEFAULT
RETURN .F.
ENDIF
For the form in question, loForm.QueryUnload actually calls the form Destroy(), but not for other forms. It's a fairly simple cbizobj form with no non-framework code in the QueryUnload(), Destroy() or Release() methods.
Why is this form being destroyed and where do I go from here? I can put an IsNull() around loForm.Release(), but that's just treating the symptom.
Chris.
Chris.