https://bugs.kde.org/show_bug.cgi?id=389419
--- Comment #6 from Bruno Bigras <bigras.br...@gmail.com> --- (In reply to Jos van den Oever from comment #5) > Does the demo in demo/ work? No I have a segmentation fault (see the end of my comment). > I've tried to reproduce the problem but cannot. I've tried on my machine and > in the provided docker environment. > [...] > You can enter the docker environment with docker/docker-bash-session.sh If I build the demo inside the docker environment, I can run it outside the environment and it works. I can't run it inside the environment because I get 'Could not connect to any X display' which I think is expected. > What distro version are you running? I see you have the latest Qt. Arch Here's if I try the demo (built with my distro stuff, not the docker env): bbigras@bruno ~/rust-qt-binding-generator/build/demo (git)-[1a5c019...] % ./Demo [1] 32441 segmentation fault (core dumped) ./Demo bbigras@bruno ~/rust-qt-binding-generator/build/demo (git)-[1a5c019...] % valgrind ./Demo :( ==32711== Memcheck, a memory error detector ==32711== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==32711== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==32711== Command: ./Demo ==32711== --32711-- WARNING: unhandled amd64-linux syscall: 332 --32711-- You may be able to write your own handler. --32711-- Read the file README_MISSING_SYSCALL_OR_IOCTL. --32711-- Nevertheless we consider this a bug. Please report --32711-- it at http://valgrind.org/support/bug_reports.html. ==32711== Syscall param ioctl(generic) points to uninitialised byte(s) ==32711== at 0x8B7DD87: ioctl (in /usr/lib/libc-2.26.so) ==32711== by 0x1F5466C8: drmIoctl (in /usr/lib/libdrm.so.2.4.0) ==32711== by 0x1F54963C: drmCommandWriteRead (in /usr/lib/libdrm.so.2.4.0) ==32711== by 0x20ABFC7A: ??? (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x20AC0592: nouveau_device_new (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x1FC6E1F3: nouveau_drm_screen_create (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1F7D3B06: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FC69720: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB37AF7: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB32AEF: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1E6CED0D: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A6A6B: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== Address 0x1e38eb72 is 2 bytes inside a block of size 72 alloc'd ==32711== at 0x4C2CEDF: malloc (vg_replace_malloc.c:299) ==32711== by 0x20ABFC1C: ??? (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x20AC0592: nouveau_device_new (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x1FC6E1F3: nouveau_drm_screen_create (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1F7D3B06: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FC69720: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB37AF7: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB32AEF: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1E6CED0D: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A6A6B: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A20A4: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A29DC: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== ==32711== Syscall param ioctl(generic) points to uninitialised byte(s) ==32711== at 0x8B7DD87: ioctl (in /usr/lib/libc-2.26.so) ==32711== by 0x1F5466C8: drmIoctl (in /usr/lib/libdrm.so.2.4.0) ==32711== by 0x1F54963C: drmCommandWriteRead (in /usr/lib/libdrm.so.2.4.0) ==32711== by 0x20ABFE79: nouveau_object_mthd (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x20AC05AE: nouveau_device_new (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x1FC6E1F3: nouveau_drm_screen_create (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1F7D3B06: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FC69720: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB37AF7: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB32AEF: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1E6CED0D: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A6A6B: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== Address 0x1e38ec02 is 2 bytes inside a block of size 136 alloc'd ==32711== at 0x4C2CEDF: malloc (vg_replace_malloc.c:299) ==32711== by 0x20ABFE40: nouveau_object_mthd (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x20AC05AE: nouveau_device_new (in /usr/lib/libdrm_nouveau.so.2.0.0) ==32711== by 0x1FC6E1F3: nouveau_drm_screen_create (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1F7D3B06: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FC69720: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB37AF7: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1FB32AEF: ??? (in /usr/lib/dri/nouveau_dri.so) ==32711== by 0x1E6CED0D: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A6A6B: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A20A4: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== by 0x1E6A29DC: ??? (in /usr/lib/libGLX_mesa.so.0.0.0) ==32711== ==32711== Invalid read of size 4 ==32711== at 0x16B8A4: (anonymous namespace)::qbytearray_t::operator QByteArray() const (Bindings.cpp:70) ==32711== by 0x16B8F4: (anonymous namespace)::set_qbytearray(QByteArray*, (anonymous namespace)::qbytearray_t*) (Bindings.cpp:75) ==32711== by 0x17C7CF: file_system_tree_data_file_icon (interface.rs:743) ==32711== by 0x16C6B5: FileSystemTree::fileIcon(QModelIndex const&) const (Bindings.cpp:387) ==32711== by 0x16CC59: FileSystemTree::data(QModelIndex const&, int) const (Bindings.cpp:439) ==32711== by 0x7CFD528: QSortFilterProxyModel::data(QModelIndex const&, int) const (in /usr/lib/libQt5Core.so.5.10.0) ==32711== by 0x17920A: SortedModel::data(QModelIndex const&, int) const (SortedModel.h:33) ==32711== by 0x6E5A529: QStyledItemDelegate::initStyleOption(QStyleOptionViewItem*, QModelIndex const&) const (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6E59A96: QStyledItemDelegate::sizeHint(QStyleOptionViewItem const&, QModelIndex const&) const (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6E9E9E5: QTreeView::indexRowSizeHint(QModelIndex const&) const (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6E9F39E: QTreeViewPrivate::layout(int, bool, bool) (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6EA759F: QTreeView::doItemsLayout() (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== Address 0x9 is not stack'd, malloc'd or (recently) free'd ==32711== ==32711== ==32711== Process terminating with default action of signal 11 (SIGSEGV): dumping core ==32711== Access not within mapped region at address 0x9 ==32711== at 0x16B8A4: (anonymous namespace)::qbytearray_t::operator QByteArray() const (Bindings.cpp:70) ==32711== by 0x16B8F4: (anonymous namespace)::set_qbytearray(QByteArray*, (anonymous namespace)::qbytearray_t*) (Bindings.cpp:75) ==32711== by 0x17C7CF: file_system_tree_data_file_icon (interface.rs:743) ==32711== by 0x16C6B5: FileSystemTree::fileIcon(QModelIndex const&) const (Bindings.cpp:387) ==32711== by 0x16CC59: FileSystemTree::data(QModelIndex const&, int) const (Bindings.cpp:439) ==32711== by 0x7CFD528: QSortFilterProxyModel::data(QModelIndex const&, int) const (in /usr/lib/libQt5Core.so.5.10.0) ==32711== by 0x17920A: SortedModel::data(QModelIndex const&, int) const (SortedModel.h:33) ==32711== by 0x6E5A529: QStyledItemDelegate::initStyleOption(QStyleOptionViewItem*, QModelIndex const&) const (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6E59A96: QStyledItemDelegate::sizeHint(QStyleOptionViewItem const&, QModelIndex const&) const (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6E9E9E5: QTreeView::indexRowSizeHint(QModelIndex const&) const (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6E9F39E: QTreeViewPrivate::layout(int, bool, bool) (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== by 0x6EA759F: QTreeView::doItemsLayout() (in /usr/lib/libQt5Widgets.so.5.10.0) ==32711== If you believe this happened as a result of a stack ==32711== overflow in your program's main thread (unlikely but ==32711== possible), you can try to increase the size of the ==32711== main thread stack using the --main-stacksize= flag. ==32711== The main thread stack size used in this run was 8388608. ==32711== ==32711== HEAP SUMMARY: ==32711== in use at exit: 3,819,810 bytes in 36,186 blocks ==32711== total heap usage: 267,641 allocs, 231,455 frees, 23,142,477 bytes allocated ==32711== ==32711== LEAK SUMMARY: ==32711== definitely lost: 0 bytes in 0 blocks ==32711== indirectly lost: 0 bytes in 0 blocks ==32711== possibly lost: 19,146 bytes in 227 blocks ==32711== still reachable: 3,718,136 bytes in 35,286 blocks ==32711== of which reachable via heuristic: ==32711== length64 : 4,872 bytes in 81 blocks ==32711== newarray : 2,096 bytes in 51 blocks ==32711== suppressed: 0 bytes in 0 blocks ==32711== Rerun with --leak-check=full to see details of leaked memory ==32711== ==32711== For counts of detected and suppressed errors, rerun with: -v ==32711== Use --track-origins=yes to see where uninitialised values come from ==32711== ERROR SUMMARY: 7 errors from 3 contexts (suppressed: 0 from 0) [1] 32711 segmentation fault (core dumped) valgrind ./Demo valgrind ./Demo 16,23s user 0,65s system 84% cpu 20,076 total -- You are receiving this mail because: You are watching all bug changes.