Kbase P176582: OpenEdge GUI client crashes when rendering images
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  11/2/2010 |
|
Status: Unverified
SYMPTOM(s):
OpenEdge GUI client crashes when rendering images
Program crashes randomly at runtime
Stack Trace from prowin32 reads:
IMGLOW_set_fileio
rcUpdateFieldMap
Crash occurs even after reinstalling OpenEdge
FACT(s) (Environment):
OpenEdge Category: Language (4GL/ABL)
OpenEdge 10.1x
Windows
CHANGE:
Upgraded to OpenEdge 10.1x
CAUSE:
Bug# OE00174464
CAUSE:
A bug in the third-party image rendering library (snbd12dm.dll) is the root cause of this crash. A support issue has been logged with the vendor of this dll. A HANDLE returned from CreateFileA in the library's IMGLOW_get_filetype function causes the crash to occur. If the HANDLE is assigned a value beyond 0x0000FFFF, the crash happens.
FIX:
Option #1
Upgrade to OpenEdge 10.1C03 or later release.
Upgrade to OpenEdge 10.2A01 or later release.
After upgrading to the appropriate release, the fix for this issue needs to be activated by specifying the -imgmem startup parameter on the client.
From OpenEdge 10.2B onwards, -imgmem is enabled by default.
Option #2
A workaround consists of pre-loading the images into a procedure library. This solution prevents images from being loaded from the file and will therefore circumvent the call of IMGLOW_get_filetype. Rendering images loaded from a procedure library is achieved by another function (namely IMGLOW_get_filetype_mem) which is not affected by the defect.
To create the procedure library:
- prolib <libname> -create
To add the image files to the procedure library:
- prolib <libname> -add <file1> ... <filen>
Add the procedure library to the PROPATH.