[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1036881: whitedune: segfaults



Control: tags -1 + confirmed upstream fixed-upstream

On Sun, May 28, 2023 at 05:07:33PM +0200, Paul Gevers wrote:
> I just tried to run whitedune, but it segfaults.
> 
> paul@mulciber ~ $ whitedune 
> Segmentation fault (core dumped)
Can confirm.

#0  SFNode::SFNode (this=0x555555c2dba0, value=0x0) at SFNode.cpp:36
#1  0x00005555557272aa in Proto::Proto (this=0x555555c2ce60, scene=0x555555c28fd0, name=...) at Proto.cpp:61
#2  0x00005555557efa6f in GroupProto::GroupProto (this=0x555555c2ce60, scene=0x555555c28fd0, name=<optimized out>, extraChrildrenNodeClass=0) at GroupNode.cpp:35
#3  0x00005555558bddae in ProtoStaticGroup::ProtoStaticGroup (this=0x555555c2ce60, scene=<optimized out>, name=<optimized out>, extraChrildrenNodeClass=<optimized out>) at NodeStaticGroup.cpp:35
#4  0x0000555555845e40 in ProtoGroup::ProtoGroup (this=0x555555c2ce60, scene=<optimized out>, name=<optimized out>) at NodeGroup.cpp:38
#5  0x00005555557ff3bd in ProtoAnchor::ProtoAnchor (this=0x555555c2ce60, scene=<optimized out>) at NodeAnchor.cpp:34
#6  0x00005555556d5dfc in SceneProtoMap::createProtoMap (protos=protos@entry=0x555555c29060, scene=scene@entry=0x555555c28fd0) at SceneProtoMap.cpp:304
#7  0x00005555556d3030 in Scene::Scene (this=0x555555c28fd0) at Scene.cpp:135
#8  0x000055555578e07c in DuneApp::OnFileNewWindow (this=0x555555bfae00) at DuneApp.cpp:364
#9  0x00005555556be331 in main (argc=<optimized out>, argv=0x7fffffffe308) at main.cpp:350

Same bt for `whitedune --help`.

The code there is weird but my C++ is rusty so I don't know if it's
permissible to do (but Google says it's UB so maybe it was a coincidence
that it worked before): Proto::Proto() calls SFNode::SFNode(NULL) which
calls ->ref0() on this NULL, the said method specifically checking for
"this != NULL".

whitedune 0.30.10 was uploaded to Debian in 2011, the current version
(the new homepage is https://wdune.ourproject.org/) is 1.956, released, I
assume, in 2020, and its SFNode::SFNode() doesn't do this anymore. I don't
see a VCS so I can't find a change that did this.


Reply to: