Bug 830628 - Yadex crashes when trying to edit a level.
Yadex crashes when trying to edit a level.
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: yadex (Show other bugs)
17
x86_64 Linux
unspecified Severity unspecified
: ---
: ---
Assigned To: Jaromír Cápík
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-06-10 23:50 EDT by Mr. Meval
Modified: 2016-01-31 20:56 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-02-08 12:03:49 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Segfault output (1.91 KB, text/plain)
2012-06-10 23:50 EDT, Mr. Meval
no flags Details
A patch of all the patches in the source RPM including disabled patches (234.57 KB, patch)
2012-06-22 01:41 EDT, Mr. Meval
no flags Details | Diff
WAD that crashes yadex (668 bytes, application/octet-stream)
2012-08-09 12:05 EDT, Gwyn Ciesla
no flags Details

  None (edit)
Description Mr. Meval 2012-06-10 23:50:51 EDT
Created attachment 590809 [details]
Segfault output

Description of problem: 

loading yadex works but when e levelname is entered the program segfaults


Version-Release number of selected component (if applicable):

yadex-1.7.0-19.fc17.x86_64
yadex-debuginfo-1.7.0-19.fc17.x86_64

How reproducible:
Always it does not matter what level

Steps to Reproduce:
1. Pick a level such as e1m1.wad or whatever.wad. yadex whatever.wad
2. Then when it loads press e level name such as e e1m1
3.Crash
  
Actual results:
Segfaults

Expected results:
Brings up editor windows

Additional info:

Fedora 17 LXDE spin X86_64 AMD quad core system.
Comment 1 Mr. Meval 2012-06-17 19:01:07 EDT
Here's a little mind bender.

Edit the make file and remove the -O 

# Options used when compiling and linking Yadex.
# ld is invoked through the C++ compiler so
# LDFLAGS should not contain options that mean
# something to the C++ compiler.
CXXFLAGS =

Yadex will compile and work normally on my 64bit system


Also could someone tell me who to send an all in one patch to? I believe I've fixed the problem with the Hexen patch and have incorporated all of the silly patches into one patch.
Comment 2 Jaromír Cápík 2012-06-18 07:25:11 EDT
Hello.

I'm unable to reproduce the issue here.

If the problem disappears when you disable optimizations, then the root cause is probably still present, just hidden.

Could you please share the wad file? 

The upstream seems to be inactive for 7 years and that's probably the reason why some unofficial patch pages exist. You can attach your patch here or try to contact one of the guys mentioned in the yadex-1.7.0/docsrc/contact.html document (only if your patch is directly applicable to the latest official sources). I became the yadex package maintainer for Fedora several months ago and as this is the first yadex bug I got, I had no reason to contact any of the upstream guys yet. If you're going to contact them, then let us know if they're still alive and responsive, please.

Thanks in advance.

Regards,
Jaromir.
Comment 3 Mr. Meval 2012-06-22 01:36:13 EDT
It would crash on any wad. I tried several from an old cdrom.com archive and some I'd created with yadex a few years ago. I will attach the patch I feebly tried to make by merging all of the patches in the RPM and hand editing failed patches. 

With the patch, it compiles and when no optimization is used it runs. In the source RPM there is a patch for Hexen attributes that was disabled due to it failing. I may or may not have fixed that but it does compile and I edited some very complex levels to see if it worked. I should test the Hexen features before stating that is complete.
Comment 4 Mr. Meval 2012-06-22 01:41:34 EDT
Created attachment 593646 [details]
A patch of all the patches in the source RPM including disabled patches

This patch should apply and compile without error.
Comment 5 Gwyn Ciesla 2012-08-08 13:33:09 EDT
I see this too.  If I try to edit wads I created a long time ago, it crashes.  If I make a wad, save it, and edit that, it works.
Comment 6 Jaromír Cápík 2012-08-09 11:48:31 EDT
Hi Jon.

That's probably the important piece of puzzle I was missing. Could you please share one of your wads?

Thanks,
Jaromir.
Comment 7 Gwyn Ciesla 2012-08-09 12:05:29 EDT
Created attachment 603298 [details]
WAD that crashes yadex

Attached.  Edit MAP01.
Comment 8 Jaromír Cápík 2012-08-09 12:42:41 EDT
Thanks.

I was finally able to reproduce it.

Unfortunately the patch is so HUUUUGE, that it could take ages to merge it into our sources. I'll try to find all differences against our patches and then remove the duplicities. Hopefully I'll find some time soon.

Thanks in advance for patience ...

Regard,
Jaromir.
Comment 9 Gwyn Ciesla 2012-08-09 12:46:16 EDT
Sweet, thanks!  While you're in there, I noticed this bundles an ancient partial copy of Boost.  Any chance you can look at that too, or do you want a seperate BZ and/or for me to look at if after you're done with this?
Comment 10 Gwyn Ciesla 2012-12-20 11:26:42 EST
Any updates, or a patch I can work off of?
Comment 11 Jaromír Cápík 2013-01-10 12:04:27 EST
Hello Jon.

I've merged the huge "allpatches" patch, but it didn't solve the SIGSEGV issue. Of course I could disable optimisations as a workaround, but I'd love to find the root cause. It's for sure some kind of memory error, since the code contains tons of magical constants. I'm unsure with the best approach right now.

Regards,
Jaromir.
Comment 12 Jaromír Cápík 2013-01-10 14:00:59 EST
Hello guys.

The workaround with disabled optimizations seems to be the best thing I can do at the moment. Please, download and test the latest Rawhide/f19 release:

http://koji.fedoraproject.org/koji/taskinfo?taskID=4855860

I've done a quick analysis with valgrind and there are some conditions based on unitialized values. The issue seems to be masked with disabled optimizations, but it's still present and it's hard to guess if it could have any negative impact on the data and the editor behaviour. We'll see.

Please, let me know. Thanks.

Regards,
Jaromir.
Comment 13 Gwyn Ciesla 2013-01-10 14:15:47 EST
Runs, doesn't crash, but I can't add objects (Ins key) but I can add rectangles.  This is true on my old files that crash yadex and new ones.  I can copy existing objects.  I tested this with -O1, -O2, and -O3, same behaviour.
Comment 14 Jaromír Cápík 2013-01-11 07:02:57 EST
Hi Jon.

Try Shift+Ins.
I don't know why, but it works in my case.

Regards,
Jaromir.
Comment 15 Jaromír Cápík 2013-01-11 07:10:48 EST
It seems we would need to fix the keyboard shortcuts and the menu too. I can't delete objects.
Comment 16 Jaromír Cápík 2013-01-11 07:20:51 EST
It seems the new patch introduced changes in the keyboard handling. I'm gonna discard them.
Comment 17 Jaromír Cápík 2013-01-11 08:03:00 EST
Please, test the new release:

http://koji.fedoraproject.org/koji/taskinfo?taskID=4859699


The issue was caused by the battle of all patches ... The very first patch introduced changes in keyboard shortcuts (Ins -> I, Del -> BackSpace, ...) and the very last patch reverted just the menu entries. At least the object insertion and deletion should work with Shift+I/Shift+Insert and BackSpace from now. Please, check the other keys too and let me know. It seems this piece of software got into a pretty poor condition as time went by. As the former upstream has apparently died, I'm thinking about creation of a new project page.
Comment 18 Gwyn Ciesla 2013-01-11 11:17:20 EST
Ah, perfect, it works now!  Thank you!  Can you build and update for f18 and f17 as well?  I can if you're short on time.
Comment 19 Jaromír Cápík 2013-01-14 12:42:24 EST
Of course. I just wanted to have some tests prior to doing this.

Gonna patch F18 and F17.
Comment 20 Fedora Update System 2013-01-14 13:24:44 EST
yadex-1.7.0-23.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/yadex-1.7.0-23.fc17
Comment 21 Fedora Update System 2013-01-14 13:24:56 EST
yadex-1.7.0-23.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/yadex-1.7.0-23.fc18
Comment 22 Fedora Update System 2013-01-16 14:23:22 EST
Package yadex-1.7.0-23.fc17:
* should fix your issue,
* was pushed to the Fedora 17 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing yadex-1.7.0-23.fc17'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-0841/yadex-1.7.0-23.fc17
then log in and leave karma (feedback).
Comment 23 Mr. Meval 2013-01-16 20:02:24 EST
yadex-1.7.0-23.fc18.x86_64

This does not crash but nay need the keymapping fixed still.
Comment 24 Jaromír Cápík 2013-01-17 13:32:14 EST
Hi guys ....

->Jon : could you please create a separate bug for the bundled boost library?

->Mr.Meval : please, send me a list of hotkeys not working properly, I'll try to fix them ... 

Thanks in advance.

Regards,
Jaromir.
Comment 25 Jaromír Cápík 2013-01-17 13:33:26 EST
->Mr.Meval : Please, create a separate bug for the keys
Comment 26 Gwyn Ciesla 2013-01-17 13:41:50 EST
https://bugzilla.redhat.com/show_bug.cgi?id=896684

Thanks!
Comment 27 Fedora Update System 2013-01-22 07:32:12 EST
yadex-1.7.0-24.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/yadex-1.7.0-24.fc17
Comment 28 Fedora Update System 2013-01-22 07:32:33 EST
yadex-1.7.0-24.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/yadex-1.7.0-24.fc18
Comment 29 Fedora Update System 2013-02-08 12:03:51 EST
yadex-1.7.0-24.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 30 Fedora Update System 2013-02-08 12:06:52 EST
yadex-1.7.0-24.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.