abrt version: 1.1.18
Attached file: backtrace, 140272 bytes
cmdline: wrestool --extract --type=14 -o . ../YoudaSurvivor_BigFish_Multi.exe
Attached file: coredump, 10477568 bytes
reason: Process /usr/bin/wrestool was killed by signal 11 (SIGSEGV)
release: Fedora release 14 (Laughlin)
How to reproduce
1. Attempted to use wrestool to extract an icon (type 14) from a Windows binary.
Created attachment 496692 [details]
Created attachment 496693 [details]
Extract of file using --raw option of wrestool
List of resources contained within the problematic Windows binary:
$ wrestool --list YoudaSurvivor_BigFish_Multi.exe
--type='BIN' --name=135 --language=2057 [offset=0x3edeb8 size=5712336]
--type='BIN' --name=137 --language=2057 [offset=0x960888 size=19076]
--type='BIN' --name=140 --language=2057 [offset=0x965310 size=39936]
--type=3 --name=1 --language=1033 [type=icon offset=0x3c1440 size=60950]
--type=3 --name=2 --language=1033 [type=icon offset=0x3d0258 size=67624]
--type=3 --name=3 --language=1033 [type=icon offset=0x3e0a80 size=38056]
--type=3 --name=4 --language=1033 [type=icon offset=0x3e9f28 size=9640]
--type=3 --name=5 --language=1033 [type=icon offset=0x3ec4d0 size=4264]
--type=3 --name=6 --language=1033 [type=icon offset=0x3ed578 size=1128]
--type=4 --name=143 --language=2057 [type=menu offset=0x96ef10 size=30]
--type=4 --name=145 --language=2057 [type=menu offset=0x96ef30 size=30]
--type=5 --name=150 --language=2057 [type=dialog offset=0x96f1e0 size=240]
--type=5 --name=151 --language=2057 [type=dialog offset=0x96f2d0 size=556]
--type=5 --name=2003 --language=2057 [type=dialog offset=0x96f500 size=220]
--type=6 --name=1 --language=2057 [type=string offset=0x96f5e0 size=104]
--type=14 --name=107 --language=1033 [type=group_icon offset=0x3ed9e0 size=90]
--type=16 --name=1 --language=2057 [type=version offset=0x3eda40 size=1144]
--type=24 --name=1 --language=2057 [offset=0x96ef50 size=650]
Scott, thanks for reporting this issue. Could you also provide YoudaSurvivor_BigFish_Multi.exe or is it a commercial application? Without the binary it's hard to track down the bug.
It is a commercial application - specifically a neat little Windows game that runs brilliantly under WINE, and it costs < AU$10.00
Here is the link to the installer download page:
The actual binary is 50MiB in size.
Let me know how you want to proceed.
I've contacted the developer of icoutils and hope he will have a closer look into the problem. Unfortunately, I can't reproduce the segfault with the demo version of Youda Survivor. Thus, we probably need a copy of the full version. As I'm pretty busy at the moment, I can't debug the code myself in the next couple of weeks. So let's see if we get some feedback from upstream.
Unfortunately, I didn't get any response from the developer yet. However, in the meantime I've isolated the issue and created a patch for wrestool.
I try to get some feedback from the upstream maintainer before providing a new package, in order to ensure that the modifications won't introduce further issues.
here's the koji scratch build of the (hopefully) fixed package:
Please test it with the above mentioned exe file and let me know if it works.
(In reply to comment #8)
> Hi Scott,
> here's the koji scratch build of the (hopefully) fixed package:
> Please test it with the above mentioned exe file and let me know if it works.
Very good - no more core dump.
I suspect that there's a glitch in the resource table within my copy of the EXE.
This is because when I run the new wrestool, I get the following results:
$ wrestool --extract --type=14 -o . ../YoudaSurvivor_BigFish_Multi.exe
wrestool: ../YoudaSurvivor_BigFish_Multi.exe: mismatch of size in icon resource `-1' and group (60950 vs 270376)
The generated file (YoudaSurvivor_BigFish_Multi.exe_14_107.ico) is 391280 bytes long; and icotool successfully extracts 6 icons to create 6 .png files of various resolutions.
When I use the "raw" option:
$ wrestool --extract --type=14 --raw -o ./YoudaSurvivor_BigFish_Multi.exe_14_107.raw.ico ../YoudaSurvivor_BigFish_Multi.exe
The resultant file is 90 bytes long, and icotool reports:
$ icotool --extract YoudaSurvivor_BigFish_Multi.exe_14_107.raw.ico
YoudaSurvivor_BigFish_Multi.exe_14_107.raw.ico: reserved is not zero
YoudaSurvivor_BigFish_Multi.exe_14_107.raw.ico: premature end
Anyway, wrestool is much more stable with the new patch.
Just as a "sanity check", I executed the new wrestool against another Windows executable (PlantsVsZombies.exe) and there were no errors produced.
(The "--raw" option still produced a short file - 174 bytes this time, but the non-raw extract worked perfectly)
OK, great. If I don't get a response from upstream within a week, I'll submit the updated package to the testing repo.
The patch has been applied to the upstream repo:
I'm going to build the updated packages now.
icoutils-0.29.1-2.fc13 has been submitted as an update for Fedora 13.
icoutils-0.29.1-2.fc14 has been submitted as an update for Fedora 14.
icoutils-0.29.1-3.fc15 has been submitted as an update for Fedora 15.
* should fix your issue,
* was pushed to the Fedora 15 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing icoutils-0.29.1-3.fc15'
as soon as you are able to.
Please go to the following url:
then log in and leave karma (feedback).
Downgraded my "koji" built version of icoutils (icoutils-0.29.1-3.fc14.x86_64) to icoutils-0.29.1-1.fc14.x86_64.
Successfully installed the Fedora 14 updates-testing version of icoutils.
Ran same sequence of tests as before.
Updates-testing package works as expected from the "koji" build.
icoutils-0.29.1-3.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.
icoutils-0.29.1-2.fc13 has been pushed to the Fedora 13 stable repository. If problems still persist, please make note of it in this bug report.
icoutils-0.29.1-2.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report.