Red Hat Bugzilla – Bug 439915
ImageMagick C++ library generates assertion failure in RemoveNodeByValueFromSplayTree
Last modified: 2014-06-03 07:40:33 EDT
Description of problem:
C++ code compiled with ImageMagick++ generates error:
magick/splay-tree.c:903: RemoveNodeByValueFromSplayTree: Assertion `splay_info
!= (SplayTreeInfo *) ((void *)0)' failed.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
Got some sample code which will show this?
Thanks. I'll try and put together a small test case, or find out I'm making a
mistake with the library... :-)
Created attachment 299965 [details]
Code reproducing the error
g++ `Magick++-config --cppflags --cxxflags --ldflags --libs` main.cpp -o
The m_bg_image image object is being accessed before it is defined. However,
ImageMagick should throw a proper exception rather than an assertion. The patch
is to only reset the exception signature in DestroyExceptionInfo() of
magick/exception.c if the relinquish member is not 0:
if (exception->relinquish != MagickFalse)
We have this patch in ImageMagick 6.4.1-4 Beta.
I have set the size and type of m_bg_image and the code runs without an assertion.
In my full code I am reading in a file to this variable when I got this
exception, does reading in a file not define the object appropriately?
This bug/component is not included in scope for RHEL-5.11.0 which is the last RHEL5 minor release. This Bugzilla will soon be CLOSED as WONTFIX (at the end of RHEL5.11 development phase (Apr 22, 2014)). Please contact your account manager or support representative in case you need to escalate this bug.
Thank you for submitting this request for inclusion in Red Hat Enterprise Linux 5. We've carefully evaluated the request, but are unable to include it in RHEL5 stream. If the issue is critical for your business, please provide additional business justification through the appropriate support channels (https://access.redhat.com/site/support).