Debian Bug report logs -
#863536
doomsday: Segfaults when attempting to start new game
Reported by: Hans Joachim Desserud <debian@desserud.org>
Date: Sun, 28 May 2017 09:39:02 UTC
Severity: important
Found in version doomsday/1.15.8-4
Fixed in version doomsday/1.15.8-5
Done: Markus Koschany <apo@debian.org>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#863536; Package doomsday.
(Sun, 28 May 2017 09:39:04 GMT) (full text, mbox, link).
Acknowledgement sent
to Hans Joachim Desserud <debian@desserud.org>:
New Bug report received and forwarded. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>.
(Sun, 28 May 2017 09:39:04 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: doomsday
Version: 1.15.8-4
Severity: important
Dear Maintainer,
Thanks for resolving
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=847651. I no longer
get a segfault at
startup, but I do see one when attempting to start a new
game:
^ : Starting music 'intro'
fluidsynth: warning: Failed to pin the sample data to RAM; swapping is
possible.
fluidsynth: warning: Failed to pin the sample data to RAM; swapping is
possible.
Game begins...
Episode: Knee-Deep In The Dead (Singleplayer)
S_StartMusic: Starting music 'e1m1'
Loading map "E1M1"...
Segmentation fault
So it looks like there might be more issues. I get similar
segfaults with both doom-shareware wad as well as freedoom.
I can navigate the menu and options fine, but it crashes
when attempting to start a new game.
It should be noted that I'm trying to run this in a VM, so
if I'm the only one who can reproduce this, I can dig
into whether it is related to the 3D graphics somehow.
-- System Information:
Debian Release: 9.0
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64
(x86_64)
Kernel: Linux 4.9.0-3-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages doomsday depends on:
ii doomsday-common 1.15.8-4
ii doomsday-data 1.15.8-4
ii libc6 2.24-10
ii libgcc1 1:6.3.0-18
ii libgl1-mesa-glx [libgl1] 13.0.6-1+b2
ii libqt4-network 4:4.8.7+dfsg-11
ii libqt4-opengl 4:4.8.7+dfsg-11
ii libqtcore4 4:4.8.7+dfsg-11
ii libqtgui4 4:4.8.7+dfsg-11
ii libsdl2-2.0-0 2.0.5+dfsg1-2
ii libsdl2-mixer-2.0-0 2.0.1+dfsg1-1
ii libstdc++6 6.3.0-18
Versions of packages doomsday recommends:
ii fluid-soundfont-gm 3.1-5.1
doomsday suggests no packages.
-- no debconf information
--
mvh / best regards
Hans Joachim Desserud
http://desserud.org
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#863536; Package doomsday.
(Wed, 31 May 2017 18:15:07 GMT) (full text, mbox, link).
Acknowledgement sent
to Bernhard Übelacker <bernhardu@mailbox.org>:
Extra info received and forwarded to list. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>.
(Wed, 31 May 2017 18:15:07 GMT) (full text, mbox, link).
Message #10 received at 863536@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Hello,
tried to reproduce the issue.
I think the problem is that in Cl_IsClientMobj the method maybeAs()
is called on a NULL pointer on mo->thinker.d.
With the attached patch the crash does not happen.
And this time I took the opportunity to play in
doom1-share.wad and doom2.wad (just short) and found
no more crashes.
Kind regards,
Bernhard
# gdb -q --args doomsday
(gdb) run
...
Loading map "E1M1"...
Thread 39 "CallbackThread" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff873a2700 (LWP 17501)]
0x00007ffff476492d in __dynamic_cast () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) bt
#0 0x00007ffff476492d in __dynamic_cast () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1 0x00005555555dc9bd in Thinker::IData::maybeAs<ClientMobjThinkerData>() (this=<optimized out>) at ../libdoomsday/include/doomsday/world/thinker.h:135
#2 0x00005555555dc9bd in Cl_IsClientMobj(mobj_s const*) (mo=mo@entry=0x7fffe2663cc0) at src/client/cl_mobj.cpp:214
#3 0x00005555558828e0 in de::Thinkers::add(thinker_s&, bool) (this=0x7fff39c58690, th=..., makePublic=makePublic@entry=true) at src/world/thinkers.cpp:230
#4 0x0000555555861020 in P_MobjCreate(void (*)(void*), de::Vector3<double> const&, unsigned int, double, double, int) (function=0x7fffe1fc3940 <P_MobjThinker>, origin=..., angle=<optimized out>, radius=16, height=128, ddflags=536870912) at src/world/p_mobj.cpp:119
#5 0x000055555580555b in Mobj_CreateXYZ(thinkfunc_t, coord_t, coord_t, coord_t, angle_t, coord_t, coord_t, int) (function=<optimized out>, x=<optimized out>, y=<optimized out>, z=<optimized out>, angle=<optimized out>, radius=<optimized out>, height=<optimized out>, ddflags=<optimized out>) at src/world/api_map.cpp:1788
#6 0x00007fffe1fc3458 in P_SpawnMobjXYZ (type=type@entry=MT_MISC48, x=288, y=-3104, z=0, angle=1073741824, spawnFlags=536870919) at src/p_mobj.c:709
#7 0x00007fffe1fc385a in P_SpawnMobj (type=type@entry=MT_MISC48, pos=pos@entry=0x7fffe26625c0, angle=<optimized out>, spawnFlags=<optimized out>) at src/p_mobj.c:796
#8 0x00007fffe1f6b972 in spawnMapObjects () at ../common/src/p_mapsetup.cpp:593
#9 0x00007fffe1f6b972 in P_FinalizeMapChange(uri_s const*) (mapUri_=0x7fff873a1900) at ../common/src/p_mapsetup.cpp:894
#10 0x00005555558871c6 in de::WorldSystem::Instance::makeCurrent(de::Map*) (this=this@entry=0x555556e16b60, newMap=newMap@entry=0x7fff38423e50) at src/world/worldsystem.cpp:521
#11 0x0000555555889022 in de::WorldSystem::Instance::changeMap(MapDef*) (this=0x555556e16b60, mapDef=0x7fff383a08f0) at src/world/worldsystem.cpp:724
#12 0x000055555588965d in de::WorldSystem::Instance::changeMapWorker(void*) (context=<optimized out>) at src/world/worldsystem.cpp:744
#13 0x00007ffff7243f83 in CallbackThread::run() (this=0x555558ae1330) at src/concurrency.cpp:76
#14 0x00007ffff4d45daa in QThreadPrivate::start(void*) (arg=0x555558ae1330) at thread/qthread_unix.cpp:352
#15 0x00007ffff6509494 in start_thread (arg=0x7fff873a2700) at pthread_create.c:333
#16 0x00007ffff3f0693f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
(gdb) up
#1 0x00005555555dc9bd in Thinker::IData::maybeAs<ClientMobjThinkerData> (this=<optimized out>) at ../libdoomsday/include/doomsday/world/thinker.h:135
135 DENG2_AS_IS_METHODS()
(gdb)
#2 Cl_IsClientMobj (mo=mo@entry=0x7fffe2663cc0) at src/client/cl_mobj.cpp:214
214 if(ClientMobjThinkerData *data = THINKER_DATA_MAYBE(mo->thinker, ClientMobjThinkerData))
(gdb) print mo
$3 = (const mobj_t *) 0x7fffe2663cc0
(gdb) print mo->thinker
$4 = {prev = 0x0, next = 0x0, function = 0x7fffe1fc3940 <P_MobjThinker>, _flags = 0, id = 0, d = 0x0}
#define THINKER_DATA_MAYBE(thinker, T) (reinterpret_cast<Thinker::IData *>((thinker).d)->maybeAs<T>())
(gdb) print mo->thinker.d
$5 = (void *) 0x0
dd_bool Cl_IsClientMobj(mobj_t const *mo)
{
if(ClientMobjThinkerData *data = THINKER_DATA_MAYBE(mo->thinker, ClientMobjThinkerData))
{
return data->hasRemoteSync();
}
return false;
}
[0001-Avoid-crash-when-mo-thinker.d-is-a-NULL-pointer.patch (text/x-patch, attachment)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#863536; Package doomsday.
(Thu, 01 Jun 2017 22:48:02 GMT) (full text, mbox, link).
Acknowledgement sent
to Markus Koschany <apo@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>.
(Thu, 01 Jun 2017 22:48:02 GMT) (full text, mbox, link).
Message #15 received at 863536@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Control: tags -1 pending
Am 31.05.2017 um 20:12 schrieb Bernhard Übelacker:
> Hello,
> tried to reproduce the issue.
>
> I think the problem is that in Cl_IsClientMobj the method maybeAs()
> is called on a NULL pointer on mo->thinker.d.
>
> With the attached patch the crash does not happen.
>
> And this time I took the opportunity to play in
> doom1-share.wad and doom2.wad (just short) and found
> no more crashes.
>
> Kind regards,
> Bernhard
Hi Bernhard,
thanks again for your patch! I have just uploaded a new revision.
Regards,
Markus
[signature.asc (application/pgp-signature, attachment)]
Added tag(s) pending.
Request was from Markus Koschany <apo@debian.org>
to 863536-submit@bugs.debian.org.
(Thu, 01 Jun 2017 22:48:02 GMT) (full text, mbox, link).
Reply sent
to Markus Koschany <apo@debian.org>:
You have taken responsibility.
(Thu, 01 Jun 2017 23:09:06 GMT) (full text, mbox, link).
Notification sent
to Hans Joachim Desserud <debian@desserud.org>:
Bug acknowledged by developer.
(Thu, 01 Jun 2017 23:09:06 GMT) (full text, mbox, link).
Message #22 received at 863536-close@bugs.debian.org (full text, mbox, reply):
Source: doomsday
Source-Version: 1.15.8-5
We believe that the bug you reported is fixed in the latest version of
doomsday, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 863536@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Markus Koschany <apo@debian.org> (supplier of updated doomsday package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 1.8
Date: Thu, 01 Jun 2017 23:42:23 +0200
Source: doomsday
Binary: doomsday doomsday-server doomsday-common doomsday-data
Architecture: source
Version: 1.15.8-5
Distribution: unstable
Urgency: medium
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Changed-By: Markus Koschany <apo@debian.org>
Description:
doomsday - enhanced version of the legendary DOOM game
doomsday-common - enhanced version of the legendary DOOM game - common files
doomsday-data - enhanced version of the legendary DOOM game - data files
doomsday-server - enhanced version of the legendary DOOM game - server
Closes: 858333 863536
Changes:
doomsday (1.15.8-5) unstable; urgency=medium
.
* Team upload.
* Add mo-thinker-NULL-pointer.patch and fix another segfault.
Thanks to Hans Joachim Desserud for the report and Bernhard Übelacker for
the patch. (Closes: #863536)
* Make the build reproducible. Thanks to Chris Lamb for the report and patch.
(Closes: #858333)
Checksums-Sha1:
69eede20c95c6531d8eff7401d715a700eab4dcd 3050 doomsday_1.15.8-5.dsc
0fd41245503260051fa743d64794fe5c038484f6 17076 doomsday_1.15.8-5.debian.tar.xz
28e46fa08ecac1d6080dc312c5f70167d572bc64 7440 doomsday_1.15.8-5_source.buildinfo
Checksums-Sha256:
438c4c6f372d01f37f8703c7e319091779a61ba0cefd91fe4975d78848fb516b 3050 doomsday_1.15.8-5.dsc
7b6ebc40a99c8a819247220c3e8296f825fc140d4c29aa16804883c3a4120322 17076 doomsday_1.15.8-5.debian.tar.xz
cf11562dbd7829a2db3ee0cdd978e4fe14f10360bc498303b274fcb5d20a0416 7440 doomsday_1.15.8-5_source.buildinfo
Files:
a941009ed7134e410133be88418b93df 3050 games optional doomsday_1.15.8-5.dsc
e0e1866f83effc29b8c2f3b249067833 17076 games optional doomsday_1.15.8-5.debian.tar.xz
af0a53d6e759c11f4ab6ed2fc4de9b65 7440 games optional doomsday_1.15.8-5_source.buildinfo
-----BEGIN PGP SIGNATURE-----
iQKjBAEBCgCNFiEErPPQiO8y7e9qGoNf2a0UuVE7UeQFAlkwmHNfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEFD
RjNEMDg4RUYzMkVERUY2QTFBODM1RkQ5QUQxNEI5NTEzQjUxRTQPHGFwb0BkZWJp
YW4ub3JnAAoJENmtFLlRO1HkrvgQAI8xdEwsan+38uc3EZ2efIRo1r9q6MFHeVkO
31bALe+O3fBhK1vdqwW/Ykx7Pq+3HAzanV07zZr0gbF+hS9M2O2cXo7UmzdzILkP
8xackaYiwFzUOSbFxzMd2kfgHyYBkuuQsPGc7hxNmZMfOo4wPkLbEuIXZCChom+L
pwNL+eqcaw200UmfMzcKm2zDYvat4PWLIwpgp71BiA/kqSlMN5oGhY/YiwsVNI/v
O+LQI7ob6W+z+r43t9GMDTYuTnzrakVa076n8B6PTuCg8Jl3vu2N8uAGNUastsez
hJ0oX9WvSzatBh0INdSj1GUcmjOLvTt58KXq7qXoghZpNqkGqeKN/R665KtUejTc
MNYDkzwPqIXUAjn0Z5n2lohOKM2LH/vUBtyFYOM1iJ3opKjjryZ6elLFuxb1ahbn
71Vr/7y3qLCXikcUFiCHoxue+R/kD+CFDxXgBDv60SkNaiMhMFhUKmB2Jim/792K
Cx2JQm8K5CU5Jidqd5uYSyxsRJH9/frN4uRg6aly5i0iYyeW2jil8Z0aBAIEOvUS
xOAhr3++lvvxadVS0LNs0Lya8YWu/wpUgkBNB+XE/HVZT6qa1TsboBOxLrdEU/hj
S729h2i04ufMOQ5g77c/Xq+a+DRGK9Jf3QEsF3i4jTXME4iW1l3YCDLifM9Ou+2i
PpGIXPqG
=UCii
-----END PGP SIGNATURE-----
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Sat, 01 Jul 2017 07:25:16 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Sun Jul 2 15:18:00 2023;
Machine Name:
bembo
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.