Kbase P108831: base64-encode function with memptr crashes session
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  31/10/2007 |
|
Status: Unverified
FACT(s) (Environment):
OpenEdge 10.x
SYMPTOM(s):
base64-encode function with memptr crashes session
Passing the LONGCHAR output of the base64-encode function to a character input parameter of a procedure crashes the session. For example:
procedure test:
define input parameter pctest as character no-undo.
message pctest
view-as alert-box info buttons ok.
end.
define variable m as memptr no-undo.
m = ?.
run test (base64-encode(m)).
//=====================================================
PROGRESS stack trace as of Thu Sep 15 13:49:17 2005
//=====================================================
Exception code: C0000005 ACCESS_VIOLATION
Fault address: 1037F2F4 01:0037E2F4 C:\Programme\dlc100b\bin\prow32.dll
Registers:
EAX:00000306
EBX:01987918
ECX:00000306
EDX:00000306
ESI:00A448CC
EDI:00BADF04
CS:EIP:001B:1037F2F4
SS:ESP:0023:0012F9E4 EBP:00000000
DS:0023 ES:0023 FS:003B GS:0000
Flags:00010206
Call Stack:
Address Frame
//=====================================================
PROGRESS stack trace as of Thu Sep 15 13:49:18 2005
//=====================================================
Exception code: C0000005 ACCESS_VIOLATION
Fault address: 1037F2F4 01:0037E2F4 C:\Programme\dlc100b\bin\prow32.dll
Registers:
EAX:00000306
EBX:01987918
ECX:00000306
EDX:00000306
ESI:00A448CC
EDI:00BADF04
CS:EIP:001B:1037F2F4
SS:ESP:0023:00000008 EBP:00000000
DS:0023 ES:0023 FS:003B GS:0000
Flags:00010206
Call Stack:
Address Frame
//=====================================================
PROGRESS stack trace as of Thu Sep 15 13:49:25 2005
//=====================================================
Exception code: C0000005 ACCESS_VIOLATION
Fault address: 00D9D2B8 01:000FC2B8 C:\Programme\dlc100b\bin\vsapi.dll
Registers:
EAX:00000018
EBX:1048B640
ECX:00F69550
EDX:7C91EB94
ESI:00000008
EDI:00BA0C64
CS:EIP:001B:00D9D2B8
SS:ESP:0023:0012FCB4 EBP:0012FCB8
DS:0023 ES:0023 FS:003B GS:0000
Flags:00010293
Call Stack:
Address Frame
00D9D2B8 0012FCB8 vsFileMove+1D78
00D2F7A6 0012FCCC vsPropGetB+236
00CE9261 0012FCDC vsUnregisterWindow+11
100593B6 0012FD18 DllStartup+A96
00BA0B34 00BCB2D4 0000:00000000
//=====================================================
PROGRESS stack trace as of Thu Sep 15 13:49:26 2005
//=====================================================
Exception code: C0000005 ACCESS_VIOLATION
Fault address: 00D9D2B8 01:000FC2B8 C:\Programme\dlc100b\bin\vsapi.dll
Registers:
EAX:00000018
EBX:1048B640
ECX:00F69550
DX:7C91EB94
ESI:00000008
EDI:00BA0C64
CS:EIP:001B:00D9D2B8
SS:ESP:0023:00BCB2DC EBP:0012FCB8
DS:0023 ES:0023 FS:003B GS:0000
Flags:00010293
Call Stack:
Address Frame
00D9D2B8 0012FCB8 vsFileMove+1D78
00D2F7A6 0012FCCC vsPropGetB+236
00CE9261 0012FCDC vsUnregisterWindow+11
100593B6 0012FD18 DllStartup+A96
00BA0B34 00BCB2D4 0000:00000000
CAUSE:
Bug# OE00120332
FIX:
Upgrade to OE10.1A
Or
If upgrade is not possible, the workaround is to change the procedure input parameter to a LONGCHAR data type.