Consultor Eletrônico



Kbase P25563: Error 49 running a 4GL procedure, stack trace shows umLitGetFmtStr()
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/16/2008
Status: Unverified

FACT(s) (Environment):

Progress 9.1D

SYMPTOM(s):

Error running a 4GL procedure.

SYSTEM ERROR: Memory violation. (49)

Program is compiled (.r code) and resides in a memory-mapped procedure library.

Stack trace from _progres reads:

dblank
umLitGetFmtStr

CAUSE:

Progress fails while attempting to display a multi-column label containing trailing spaces. For example:

DEFINE VARIABLE v AS CHARACTER.
DEFINE FRAME fTest
v COLUMN-LABEL "test !field".

UPDATE v WITH FRAME fTest.

This is just an example: any piece of 4GL that will cause a frame to be displayed which contains any such field will crash the session with umLitGetFmtStr() and dblank() in the stack trace.

FIX:

Remove the trailing spaces from the COLUMN-LABEL phrase. For example:

DEFINE VARIABLE v AS CHARACTER.
DEFINE FRAME fTest
v COLUMN-LABEL "test!field".

UPDATE v WITH FRAME fTest.