View Issue Details

IDProjectCategoryView StatusLast Update
0005373DarkRadiantCompilation/Buildpublic05.02.2021 11:29
ReporterBielBdeLuna Assigned Togreebo  
PriorityhighSeveritycrashReproducibilityalways
Status closedResolutionfixed 
PlatformLinuxOSUbuntuOS Version20.10
Product Version2.9.0 
Fixed in Version2.9.0 
Summary0005373: segfault when selecting a material in the media/textures list
Descriptiondarkradiant was compiled from Github from: https://github.com/codereader/DarkRadiant.git
on this commit: https://github.com/codereader/DarkRadiant/commit/6e3df58918b6114f7650a8489549bfc97af49174

I get a segfault when selecting a material from the texture window

I provided a GDB stacktrace in the additional info.
Steps To ReproduceSelect the first texture in Doom3 set of textures within the texture window: textures / alphalabs / a_enwall13c

you'll get an imediate segfault
Additional Informationthe stacktrace of gdb:

$ gdb darkradiant
GNU gdb (Ubuntu 9.2-0ubuntu2) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from darkradiant...
(gdb) run
Starting program: /usr/local/bin/darkradiant
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff1b1a640 (LWP 29327)]
[New Thread 0x7ffff1319640 (LWP 29328)]

Thread 3 "gdbus" received signal SIG33, Real-time event 33.
[Switching to Thread 0x7ffff1319640 (LWP 29328)]
0x00007ffff69a766f in __GI___poll (fds=0x555555ab90a0, nfds=2, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
29 ../sysdeps/unix/sysv/linux/poll.c: El fitxer o directori no existeix.
(gdb) continue
Continuing.

Thread 2 "gmain" received signal SIG33, Real-time event 33.
[Switching to Thread 0x7ffff1b1a640 (LWP 29327)]
0x00007ffff69a766f in __GI___poll (fds=0x555555aa8f90, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
29 in ../sysdeps/unix/sysv/linux/poll.c
(gdb) continue
Continuing.
[New Thread 0x7fffa2ffd640 (LWP 29354)]

(darkradiant:29323): Gtk-WARNING **: 03:13:36.084: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.084: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)

(darkradiant:29323): Gtk-CRITICAL **: 03:13:36.084: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkCheckButton

(darkradiant:29323): Gtk-WARNING **: 03:13:36.084: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.084: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.084: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)

(darkradiant:29323): Gtk-CRITICAL **: 03:13:36.084: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkCheckButton

(darkradiant:29323): Gtk-WARNING **: 03:13:36.084: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.084: Negative content width -1 (allocation 1, extents 1x1) while allocating gadget (node scrolledwindow, owner GtkScrolledWindow)

(darkradiant:29323): Gtk-CRITICAL **: 03:13:36.085: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(darkradiant:29323): Gtk-WARNING **: 03:13:36.085: Negative content width -17 (allocation 1, extents 9x9) while allocating gadget (node entry, owner GtkEntry)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.085: Negative content width -17 (allocation 1, extents 9x9) while allocating gadget (node entry, owner GtkEntry)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.085: Negative content width -19 (allocation 1, extents 10x10) while allocating gadget (node button, owner GtkButton)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.085: Negative content width -1 (allocation 1, extents 1x1) while allocating gadget (node scrolledwindow, owner GtkScrolledWindow)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.085: Negative content width -14 (allocation 20, extents 17x17) while allocating gadget (node button, owner GtkButton)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.085: Negative content height -1 (allocation 1, extents 1x1) while allocating gadget (node scrolledwindow, owner GtkScrolledWindow)

(darkradiant:29323): Gtk-CRITICAL **: 03:13:36.086: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(darkradiant:29323): Gtk-CRITICAL **: 03:13:36.086: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(darkradiant:29323): Gtk-CRITICAL **: 03:13:36.086: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(darkradiant:29323): Gtk-WARNING **: 03:13:36.086: Negative content width -14 (allocation 20, extents 17x17) while allocating gadget (node button, owner GtkButton)

(darkradiant:29323): Gtk-WARNING **: 03:13:36.087: Negative content width -17 (allocation 1, extents 9x9) while allocating gadget (node entry, owner GtkEntry)
[New Thread 0x7fffa27fc640 (LWP 29355)]
[New Thread 0x7fffa18fb640 (LWP 29356)]
[New Thread 0x7fffa0e7a640 (LWP 29357)]
[Thread 0x7fffa0e7a640 (LWP 29357) exited]
--Type <RET> for more, q to quit, c to continue without paging--ret

Thread 1 "darkradiant" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff243ba80 (LWP 29323)]
wxutil::TreeModel::GetParent (this=0x555556c28370, item=...)
    at TreeModel.cpp:586
586 return owningNode->parent->item;
(gdb) bt
#0 wxutil::TreeModel::GetParent(wxDataViewItem const&) const
    (this=0x555556c28370, item=...) at TreeModel.cpp:586
0000001 0x00007ffff7a4d457 in () at /lib/x86_64-linux-gnu/libwx_gtk3u_adv-3.0.so.0
0000002 0x00007ffff7a5084c in () at /lib/x86_64-linux-gnu/libwx_gtk3u_adv-3.0.so.0
0000003 0x00007ffff7a51e9b in () at /lib/x86_64-linux-gnu/libwx_gtk3u_adv-3.0.so.0
0000004 0x00007ffff6230eff in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000005 0x00007ffff623696a in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000006 0x00007ffff62402d5 in gtk_tree_view_set_model ()
    at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000007 0x00007ffff7a4bb0e in () at /lib/x86_64-linux-gnu/libwx_gtk3u_adv-3.0.so.0
#8 0x00007ffff7a4c84e in () at /lib/x86_64-linux-gnu/libwx_gtk3u_adv-3.0.so.0
0000009 0x00007ffff79a5daa in wxDataViewModel::Cleared() ()
    at /lib/x86_64-linux-gnu/libwx_gtk3u_adv-3.0.so.0
0000010 0x0000555555785f84 in ui::TexturePreviewCombo::refreshInfoTable()
    (this=0x555556c05c00) at ui/common/TexturePreviewCombo.cpp:62
0000011 0x000055555578636c in ui::TexturePreviewCombo::SetTexture(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
    (this=0x555556c05c00, tex=...) at ui/common/TexturePreviewCombo.cpp:54
0000012 0x0000555555711eb5 in ui::MediaBrowser::handleSelectionChange()
    (this=0x555555ab2dc0) at ui/mediabrowser/MediaBrowser.cpp:954
0000013 0x00005555557121a1 in ui::MediaBrowser::setSelection(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
    (this=0x555555ab2dc0, selection="\220\322A\214\377\177\000\000\340\327A\214\--Type <RET> for more, q to quit, c to continue without paging--ret
377\177\000\000\320\336A\214\377\177\000\000P\340A\214\377\177\000\000\320\340A\214\377\177", '\000' <repeats 26 times>, "\320\320A\214\377\177\000\000\370\320A\214\377\177\000\000\370\320A\214\377\177\000\000\060\333A\214\377\177\000\000\000\000\000\000\000\000\000\000\060\333A\214\377\177\000\000\006\000\000\000\000\000\000\000\070\333A\214\377\177\000\000\000\000\000\000\000\000\000\000\025\002\000\000\000\000\000\000\300\031$\367\377\177\000\000\200\326A\214\377\177\000\000\220\330A\214\377\177", '\000' <repeats 34 times>...)
    at ui/mediabrowser/MediaBrowser.cpp:636
0000014 0x000055555570fb32 in ui::MediaBrowser::onShaderClipboardSourceChanged()
    (this=0x555555ab2dc0) at ../include/imodule.h:414
0000015 0x00007ffff057ab3a in sigc::internal::signal_emit0<void, sigc::nil>::emit(sigc::internal::signal_impl*) (impl=0x555556cad780)
    at /usr/include/sigc++-2.0/sigc++/signal.h:798
0000016 0x00007ffff081fbf5 in sigc::signal0<void, sigc::nil>::emit() const
    (this=0x555555a77cc8) at /usr/include/sigc++-2.0/sigc++/signal.h:2803
0000017 selection::ShaderClipboard::sourceChanged() (this=0x555555a77c60)
    at selection/shaderclipboard/ShaderClipboard.cpp:53
0000018 0x0000555555711f15 in ui::MediaBrowser::handleSelectionChange()
    (this=0x555555ab2dc0) at ../include/imodule.h:414
0000019 0x00007ffff7199661 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000020 0x00007ffff71999fa in wxEvtHandler::SearchDynamicEventTable(wxEvent&) ()
--Type <RET> for more, q to quit, c to continue without paging--ret
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000021 0x00007ffff7199a94 in wxEvtHandler::TryHereOnly(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000022 0x00007ffff7199b4b in wxEvtHandler::ProcessEventLocally(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000023 0x00007ffff7199bf1 in wxEvtHandler::ProcessEvent(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000024 0x00007ffff719997b in wxEvtHandler::SafelyProcessEvent(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000025 0x00007ffff7a59f97 in () at /lib/x86_64-linux-gnu/libwx_gtk3u_adv-3.0.so.0
0000026 0x00007ffff5c37b56 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000027 0x00007ffff5c50bbf in g_signal_emit_valist ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000028 0x00007ffff5c50da3 in g_signal_emit ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000029 0x00007ffff623d34b in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000030 0x00007ffff6245690 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000031 0x00007ffff62b3cff in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000032 0x00007ffff5c37b56 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000033 0x00007ffff5c50bbf in g_signal_emit_valist ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000034 0x00007ffff5c50da3 in g_signal_emit ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
--Type <RET> for more, q to quit, c to continue without paging--ret
0000035 0x00007ffff60bb531 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000036 0x00007ffff5c3ad14 in g_cclosure_marshal_VOID__BOXEDv ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000037 0x00007ffff5c37b56 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000038 0x00007ffff5c50bbf in g_signal_emit_valist ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000039 0x00007ffff5c50da3 in g_signal_emit ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000040 0x00007ffff60b8046 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000041 0x00007ffff60b963f in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000042 0x00007ffff60bc803 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000043 0x00007ffff60820c0 in gtk_event_controller_handle_event ()
    at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000044 0x00007ffff625441d in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000045 0x00007ffff62ad6fb in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000046 0x00007ffff5c378fa in g_closure_invoke ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000047 0x00007ffff5c49f0e in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000048 0x00007ffff5c50586 in g_signal_emit_valist ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000049 0x00007ffff5c50da3 in g_signal_emit ()
    at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
0000050 0x00007ffff6256514 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
--Type <RET> for more, q to quit, c to continue without paging--ret
0000051 0x00007ffff6104d50 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000052 0x00007ffff6106a93 in gtk_main_do_event ()
    at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000053 0x00007ffff5ddee89 in () at /lib/x86_64-linux-gnu/libgdk-3.so.0
0000054 0x00007ffff5e138e6 in () at /lib/x86_64-linux-gnu/libgdk-3.so.0
0000055 0x00007ffff58944db in g_main_context_dispatch ()
    at /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000056 0x00007ffff5894788 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000057 0x00007ffff5894aa3 in g_main_loop_run ()
    at /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000058 0x00007ffff61059fd in gtk_main () at /lib/x86_64-linux-gnu/libgtk-3.so.0
0000059 0x00007ffff74e8bf5 in wxGUIEventLoop::DoRun() ()
    at /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.0.so.0
0000060 0x00007ffff704dd41 in wxEventLoopBase::Run() ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000061 0x00007ffff70153da in wxAppConsoleBase::MainLoop() ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000062 0x00007ffff70a173d in wxEntry(int&, wchar_t**) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
0000063 0x000055555564f412 in main(int, char**)
    (argc=<optimized out>, argv=<optimized out>) at main.cpp:7
(gdb) continue
Continuing.
Couldn't get registers: El procés no existeix.
Couldn't get registers: El procés no existeix.
(gdb) [Thread 0x7fffa18fb640 (LWP 29356) exited]
[Thread 0x7fffa27fc640 (LWP 29355) exited]
[Thread 0x7ffff1319640 (LWP 29328) exited]
[Thread 0x7ffff1b1a640 (LWP 29327) exited]
--Type <RET> for more, q to quit, c to continue without paging--ret

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
TagsCrash

Activities

greebo

greebo

30.10.2020 16:52

administrator   ~0012850

Thanks for the detailed report!
BielBdeLuna

BielBdeLuna

08.11.2020 20:11

reporter   ~0012875

the issue seems to be resolved now

Related Changesets

DarkRadiant: 2.9.0 fbe6e4f0

02.11.2020 19:37

greebo


Details Diff
0005373: Add feedback blocker to MediaBrowser, to not change its selection when setting the ShaderClipboard after a MediaBrowser selection. Affected Issues
0005373
mod - radiant/ui/mediabrowser/MediaBrowser.cpp Diff File
mod - radiant/ui/mediabrowser/MediaBrowser.h Diff File

Issue History

Date Modified Username Field Change
30.10.2020 04:14 BielBdeLuna New Issue
30.10.2020 04:14 BielBdeLuna Tag Attached: Crash
30.10.2020 16:52 greebo Status new => confirmed
30.10.2020 16:52 greebo Note Added: 0012850
30.10.2020 16:53 greebo Product Version => 2.9.0
30.10.2020 16:53 greebo Additional Information Updated
02.11.2020 19:37 greebo Changeset attached => DarkRadiant 2.9.0 fbe6e4f0
02.11.2020 19:38 greebo Assigned To => greebo
02.11.2020 19:38 greebo Status confirmed => assigned
08.11.2020 20:11 BielBdeLuna Note Added: 0012875
09.11.2020 02:41 greebo Status assigned => resolved
09.11.2020 02:41 greebo Resolution open => fixed
09.11.2020 02:41 greebo Fixed in Version => 2.9.0
05.02.2021 11:29 greebo Status resolved => closed