Currently experimenting with a 64-bit debug version build from the latest trunk
using the
professional Visual Studio C++ compiler from MS (latest patches applied).
While running a Rexx program an alert-window popped up with the following
message:
--------------------------- Microsoft Visual C++ Runtime Library
---------------------------
Debug Error! Program: C:\Program Files\ooRexx\rxwinsys.DLL Module:
C:\Program
Files\ooRexx\rxwinsys.DLL File:
g:\oorexx.tmp\oorexxsvn\main\trunk\extensions\platform\windows\rxwinsys\rxwinsys.cpp
Line: 3869
Run-Time Check Failure #2 - Stack around the variable 'timeOut' was
corrupted. (Press Retry to
debug the application) --------------------------- Abort Retry Ignore
---------------------------
"Retry" allows to run the VS debugger. Here the stack trace:
rxwinsys.dll!failwithmessage(void * retaddr=0x000007feded059a8, int
crttype=1, int errnum, const
char * msg=0x000000000019c300) C++ rxwinsys.dll!_RTC_StackFailure(void *
retaddr=0x000007feded059a8, const char * varname=0x000007fededeb100) C++
rxwinsys.dll!_RTC_CheckStackVars(void * frame=0x000000000019c750,
_RTC_framedesc *
v=0x000007fededeb360) C++ > rxwinsys.dll!WSCtrlSend(const char *
funcname=0x000007fffd8924c4,
unsigned __int64 argc=7, _CONSTRXSTRING * argv=0x000000000019c970, const
char *
qname=0x000007fffd7b4874, _RXSTRING * retstr=0x000000000019cab8) Line 3869
C++
rexx.dll!NativeActivation::callRegisteredRoutine(RoutineClass *
_routine=0x000007fffd805500,
RegisteredRoutine * _code=0x000007fffd8054c0, RexxString *
functionName=0x000007fffd892480,
RexxObject * * list=0x000007fffd398168, unsigned __int64 count=7,
ProtectedObject &
resultObj={...}) Line 1477 C++ rexx.dll!RegisteredRoutine::call(Activity *
activity=0x000007fffd7aed20, RoutineClass * routine=0x000007fffd805500,
RexxString *
functionName=0x000007fffd892480, RexxObject * * argPtr=0x000007fffd398168,
unsigned __int64
count=7, ProtectedObject & result={...}) Line 402 C++
rexx.dll!RoutineClass::call(Activity *
activity=0x000007fffd7aed20, RexxString * routineName=0x000007fffd892480,
RexxObject * *
argPtr=0x000007fffd398168, unsigned __int64 argcount=7, ProtectedObject &
result={...}) Line 169
C++ rexx.dll!PackageManager::callNativeRoutine(Activity *
activity=0x000007fffd7aed20,
RexxString * name=0x000007fffd892480, RexxObject * *
arguments=0x000007fffd398168, unsigned
__int64 argcount=7, ProtectedObject & result={...}) Line 667 C++
rexx.dll!SystemInterpreter::invokeExternalFunction(RexxActivation *
activation=0x000007fffd92ecc0, Activity * activity=0x000007fffd7aed20,
RexxString *
target=0x000007fffd892480, RexxObject * * arguments=0x000007fffd398168,
unsigned __int64
argcount=7, RexxString * calltype=0x000007ffff983d90, ProtectedObject &
result={...}) Line 277
C++ rexx.dll!RexxActivation::externalCall(RexxString *
target=0x000007fffd892480, RexxObject * *
arguments=0x000007fffd398168, unsigned __int64 argcount=7, RexxString *
calltype=0x000007ffff983d90, ProtectedObject & resultObj={...}) Line 2687
C++
rexx.dll!RexxExpressionFunction::evaluate(RexxActivation *
context=0x000007fffd92ecc0,
ExpressionStack * stack=0x000007fffd92ee10) Line 201 C++
rexx.dll!RexxInstructionExpression::evaluateExpression(RexxActivation *
context=0x000007fffd92ecc0, ExpressionStack * stack=0x000007fffd92ee10)
Line 229 C++
rexx.dll!RexxInstructionReturn::execute(RexxActivation *
context=0x000007fffd92ecc0,
ExpressionStack * stack=0x000007fffd92ee10) Line 72 C++
rexx.dll!RexxActivation::run(RexxObject
* _receiver=0x000007fffd92ec90, RexxString * name=0x000007fffd7c67a0,
RexxObject * *
_arglist=0x000007fffd398098, unsigned __int64 _argcount=1, RexxInstruction *
start=0x0000000000000000, ProtectedObject & resultObj={...}) Line 623 C++
rexx.dll!RexxCode::run(Activity * activity=0x000007fffd7aed20, MethodClass *
method=0x000007fffd893b30, RexxObject * receiver=0x000007fffd92ec90,
RexxString *
msgname=0x000007fffd7c67a0, RexxObject * * argPtr=0x000007fffd398098,
unsigned __int64
argcount=1, ProtectedObject & result={...}) Line 212 C++
rexx.dll!MethodClass::run(Activity *
activity=0x000007fffd7aed20, RexxObject * receiver=0x000007fffd92ec90,
RexxString *
msgname=0x000007fffd7c67a0, RexxObject * * argPtr=0x000007fffd398098,
unsigned __int64 count=1,
ProtectedObject & result={...}) Line 171 C++
rexx.dll!RexxObject::messageSend(RexxString *
msgname=0x000007fffd7c67a0, RexxObject * * arguments=0x000007fffd398098,
unsigned __int64
count=1, ProtectedObject & result={...}) Line 839 C++
rexx.dll!ExpressionStack::send(RexxString
* message=0x000007fffd7c67a0, unsigned __int64 count=1, ProtectedObject &
result={...}) Line 80
C++ rexx.dll!RexxInstructionMessage::execute(RexxActivation *
context=0x000007fffd7ec9f0,
ExpressionStack * stack=0x000007fffd7ecb40) Line 188 C++
rexx.dll!RexxActivation::run(RexxObject
* _receiver=0x0000000000000000, RexxString * name=0x000007fffd7b5690,
RexxObject * *
_arglist=0x000007fffd7b4ce0, unsigned __int64 _argcount=1, RexxInstruction *
start=0x0000000000000000, ProtectedObject & resultObj={...}) Line 623 C++
rexx.dll!RexxCode::call(Activity * activity=0x000007fffd7aed20,
RoutineClass *
routine=0x000007fffd7ec9b0, RexxString * routineName=0x000007fffd7b5690,
RexxObject * *
argPtr=0x000007fffd7b4ce0, unsigned __int64 argcount=1, RexxString *
calltype=0x000007ffff8c3bd0, RexxString * environment=0x000007ffff983de0,
ActivationContext
context=PROGRAMCALL, ProtectedObject & result={...}) Line 188 C++
rexx.dll!RoutineClass::runProgram(Activity * activity=0x000007fffd7aed20,
RexxObject * *
arguments=0x000007fffd7b4ce0, unsigned __int64 argCount=1, ProtectedObject
& result={...}) Line
264 C++ rexx.dll!CallProgramDispatcher::run() Line 241 C++
rexx.dll!NativeActivation::run(ActivityDispatcher & dispatcher={...}) Line
1575 C++
rexx.dll!Activity::run(ActivityDispatcher & target={...}) Line 3184 C++
rexx.dll!CallProgram(RexxThreadContext_ * c=0x000007fffd7aed48, const char *
p=0x0000000000359a55, _RexxArrayObject * a=0x000007fffd7b4c80) Line 498 C++
rexx.exe!RexxThreadContext_::CallProgram(const char * n=0x0000000000359a55,
_RexxArrayObject *
a=0x000007fffd7b4c80) Line 866 C++ rexx.exe!main(int argc=5, char * *
argv=0x0000000000359a20)
Line 226 C++ rexx.exe!invoke_main() Line 65 C++
rexx.exe!__scrt_common_main_seh() Line 253 C++
rexx.exe!__scrt_common_main() Line 296 C++ rexx.exe!mainCRTStartup() Line
17 C++
kernel32.dll!0000000076fe59cd() Unknown ntdll.dll!000000007711a561() Unknown
Here the Locals from WSCtrlSend:
argc 7 unsigned __int64 - argv 0x000000000019c970 {strlength=2
strptr=0x000007fffd92f494 "TO" }
_CONSTRXSTRING * strlength 2 unsigned __int64 - strptr 0x000007fffd92f494
"TO" const char * 84
'T' const char - funcname 0x000007fffd8924c4 "WSCTRLSEND" const char * 87
'W' const char - hW
0x000000000000ffff {unused=??? } HWND__ * unused <Unable to read memory> -
HwndFgWin
0xcccccccccccccccc {unused=??? } HWND__ * unused <Unable to read memory> -
qname
0x000007fffd7b4874 "SESSION" const char * 83 'S' const char - retstr
0x000000000019cab8
{strlength=1 strptr=0x000000000019caf0 "0" } _RXSTRING * strlength 1
unsigned __int64 + strptr
0x000000000019caf0 "0" char *
Not sure what to do with this, hence reporting it here.
---rony
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel