Consultor Eletrônico



Kbase P152132: System Error (49) caused by TRIM function on LONGCHAR variable
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   05/07/2010
Status: Unverified

SYMPTOM(s):

System Error (49) caused by TRIM function on LONGCHAR variable

Using TRIM function on LONGCHAR variable with NULL value causes a crash on HPUXIA64 in 10.2A01

SYSTEM ERROR: Memory violation. (49)

FACT(s) (Environment):

ia64 (Itanium)
OpenEdge 10.2A01 64-bit Service Pack

CAUSE:

Bug# OE00190413

FIX:

Upgrade to OpenEdge 10.2A03 or later
Upgrade to OpenEdge 10.2B or later

To workaround this issue do not use the TRIM function.

In the case that was logged, the code was using TRIM to ensure the LONGCHAR variable was empty and ignore any embedded spaces.
e.g.

IF TRIM(lcVar) NE "" THEN ...

Instead, simply check that the value of the variable is greater than blank
ull.
e.g.
IF (lcVar GT "") EQ TRUE THEN ...

This will ignore the unknown value as well as embedded spaces without using the TRIM function or additional conditions for each case.