I've read enough to understand that the callstack provided may not be 100% correct, but I am wondering if there are any best guesses that can be made about things that seem wrong. Take this small part of a callstack.
Code: Select all
0353d446 +242 TestPackage.bpl Testing.DataForm 1018 +53 TDataForm.DoRestartForm
776b068a +00a ntdll.dll KiUserExceptionDispatcher
5006563c +20c rtl250.bpl System DynArraySetLength
500656dd +005 rtl250.bpl System @DynArraySetLength
50151e4a +02e rtl250.bpl System Classes.TList.SetCapacity
50151bcb +02b rtl250.bpl System Classes.TList.Grow
50151997 +013 rtl250.bpl System Classes.TList.Add
0353d295 +091 TestPackage.bpl Testing.DataForm 974 +9 TDataForm.DoRestartForm
0353cc0a +09a TestPackage.bpl Testing.DataForm 778 +8 TDataForm.DoInitialise
Note: In this example the questionable items all happen to be in VCL or Windows (no line numbers) but this is not always the case.
My question is: Since the steps from Classes.TList.Add ... DynArraySetLength all seem to make sense in themselves (seems to be a valid and consistent chunk of callstack) is it reasonably safe to assume this chunk of the stack is probably correct (not noise); and so to also assume that madExcept did just miss the intervening steps from TDataForm.DoRestartForm to Classes.TList.Add ?
If it's not a safe assumption then there are so many other things it might have done that the particular callstack would seem to be not much use, and assuming it's good may just lead to me chasing the wrong problem. Is there any guidance you can offer?