It seems that in particular cases when calling external functions and use them directly as function parameters will crash TD 63.
For instance:
Code: Select all
Call OnErrorCheck( ExtFunction1( "a", "b" ) )
And when rewriting the above to :
Code: Select all
Set nError = ExtFunction1( "a", "b" )
Call OnErrorCheck( nError )
It does not happen in all external functions I checked. Most WinAPI functions seem to work ok.
But on many 3rd party dll's and custom dll's we use, the crash is present.
I tried to create a testcase having the DLL project also.
I have seen that when the external function has parameters of its own (like in the sample above) the crash occurs.
But on functions without parameters it does not crash.
So I do not have the exact cause why and when it will fail. But at least the attached testcase can reproduce it.
I have tested the sample on several TD versions, and none crash (except TD 6.3 UPD1r)
Even TD 6.3 RTM does not crash. It seems to be introduced in TD 6.3 UPD1r !!!
For me this is an urgent one as we heavily use external components and it's impossible to check them all to apply the workaround.
(and even having the workaround, my feeling is it will make TD unstable)
The testcase is saved as TD 6.2 text format.
The test dll can be rebuild using the VS6 project.
Please confirm.
PS.
This issue resembles
viewtopic.php?t=69679