root icon indicating copy to clipboard operation
root copied to clipboard

libAfterImage: TEve broken with giflib 5

Open veprbl opened this issue 2 years ago • 1 comments

  • [x] Checked for duplicates (related to https://sft.its.cern.ch/jira/browse/ROOT-7904)

Describe the bug

A patch from Gentoo imported in d9ca8cb6e3b1e4bdd70041c43805f0851aea7c9e (https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/libafterimage/files/libafterimage-giflib5-v2.patch) contains a bogus call

+#if (GIFLIB_MAJOR>=5)
+            		if ((status = GifAddExtensionBlock(&temp_save.ExtensionBlockCount, &temp_save.ExtensionBlocks,
+                            ExtCode, sizeof(ExtData), ExtData)) == GIF_OK)
+                    status = DGifGetExtension(gif,&ExtCode,&ExtData);
+#else

where

     GifByteType *ExtData;

so sizeof(ExtData) is a size of a pointer when it's probably has to be a size of some data block.

Which results in a crash when trying to use TEve:

gif2ASImage():2300:</nix/store/jhzzgdncnmwzdb2jp9dhmv9bb2nyxcl3-root-6.24.06/icons/eve_text.gif> (null)

 *** Break *** segmentation violation

Expected behavior

TEve works.

To Reproduce

Setup

ROOT 6.24.06 compiled against an external libAfterImage, with the same Gentoo patches applied to compile against giflib 5 Crash reproduced on macOS.

Additional context

veprbl avatar Jul 19 '22 15:07 veprbl

@veprbl Can you check that https://github.com/root-project/root/pull/10999 fixes the problem?

linev avatar Jul 20 '22 07:07 linev

Hi @couet, @osschar, @linev,

It appears this issue is closed, but wasn't yet added to a project. Please add upcoming versions that will include the fix, or 'not applicable' otherwise.

Sincerely, :robot:

github-actions[bot] avatar Jul 11 '23 06:07 github-actions[bot]

Hi @couet, @osschar, @linev,

It appears this issue is closed, but wasn't yet added to a project. Please add upcoming versions that will include the fix, or 'not applicable' otherwise.

Sincerely, :robot:

github-actions[bot] avatar Jul 13 '23 06:07 github-actions[bot]