• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 249
  • Last Modified:

GPF on closing application.

Hi,

I have a D1 app that gives a GPF on closing, but only if there are no children open in the main form.  If there is a child open, it closes no problem.  If I step through the
code, it goes all the way through the FormDestroy event handler, and on exit from there goes to the FormResize event handler.  If I F7 past the END ; of that event handler,
I get the GPF.  The FormDestroy handler writes the INI file, and has a few FREEs. Whatever, disabling the code in these event handlers does not alter the behaviour.

The other curious thing is that it only occurs on 1 of many machines we have.  There is nothing peculiar about this machine.

 
0
rossmcm
Asked:
rossmcm
  • 2
1 Solution
 
icampbe1Commented:
Your problem is almost always an attempt to free an object that doens't exist.  Make sure that you follow each of the frees with a NIL assignment:  Obj.Free;  Obj := NIL;   Subsequent frees will be OK with this.

Also, I'm not sure I understand the sequence of your comment above.  You destroy the form and then resize it???

Anyhow, do the NIL assignments first.  It is a good practice to follow.  If it still doesn't work, we'll look more closely.

Ian C.

0
 
rossmcmAuthor Commented:
Tried assignments to NIL after the frees - no change.  

I don't actually destroy the form and then resize it.  
What I think is happening is that the OnResize event
for the main form is being called 'automatically'
because the form has been destroyed.   Removing the
OnResize handler has no effect.

0
 
icampbe1Commented:
Thanks for the grade..  Is it fixed?  If not, whats different about the machine that it happens on (how is it different from the ones it works on)?
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now