Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 954756 - net-analyzer/wireshark-4.4.6-r1 segfault on exit KDE
Summary: net-analyzer/wireshark-4.4.6-r1 segfault on exit KDE
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Holger Hoffstätte
URL: https://gitlab.com/wireshark/wireshar...
Whiteboard:
Keywords: PATCH, PullRequest
Depends on:
Blocks:
 
Reported: 2025-04-26 14:14 UTC by Михаил
Modified: 2025-04-26 17:24 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Михаил 2025-04-26 14:14:15 UTC
Wireshark crashes inside Qt library on exit if used in KDE session with Breeze theme decoration plugin.

Reproducible: Always

Steps to Reproduce:
1. Start capture to get 20+ packets 
2. Quit application

Actual Results:  
witeshark crashes on exit.

Expected Results:  
wireshark should exit without segfault. 

Upstream fix works for me https://gitlab.com/wireshark/wireshark/-/commit/b4d6d76c6eba2da7f8df55c328607fe651037c03





$ emerge --info
Portage 3.0.67 (python 3.12.10-final-0, default/linux/amd64/23.0/desktop/systemd, gcc-14, glibc-2.40-r8, 6.12.25-gentoo x86_64)
=================================================================
System uname: Linux-6.12.25-gentoo-x86_64-AMD_Ryzen_7_7840HS_w-_Radeon_780M_Graphics-with-glibc2.40
KiB Mem:    63614140 total,  32111504 free
KiB Swap:   67108860 total,  67108860 free
Timestamp of repository gentoo: Fri, 25 Apr 2025 19:05:19 +0000
Head commit of repository gentoo: 89b256c5be0621b1f2b1300cba74d88dabcdd4a7

Timestamp of repository steam-overlay: Wed, 23 Apr 2025 15:38:10 +0000
Head commit of repository steam-overlay: 23f38449f9a86d0648566b51a51e73d9561a40e6

sh bash 5.2_p37
ld GNU ld (Gentoo 2.44 p1) 2.44.0
app-misc/pax-utils:        1.3.8::gentoo
app-shells/bash:           5.2_p37::gentoo
dev-build/autoconf:        2.13-r8::gentoo, 2.72-r1::gentoo
dev-build/automake:        1.17-r1::gentoo
dev-build/cmake:           3.31.5::gentoo
dev-build/libtool:         2.5.4::gentoo
dev-build/make:            4.4.1-r100::gentoo
dev-build/meson:           1.7.0::gentoo
dev-lang/perl:             5.40.2::gentoo
dev-lang/python:           3.12.10::gentoo, 3.13.3::gentoo
dev-lang/rust:             1.85.1::gentoo
llvm-core/clang:           19.1.7::gentoo
llvm-core/lld:             19.1.7::gentoo
llvm-core/llvm:            19.1.7::gentoo
sys-apps/baselayout:       2.17::gentoo
sys-apps/sandbox:          2.39::gentoo
sys-apps/systemd:          256.10::gentoo
sys-devel/binutils:        2.44::gentoo
sys-devel/binutils-config: 5.5.2::gentoo
sys-devel/gcc:             14.2.1_p20241221::gentoo
sys-devel/gcc-config:      2.12.1::gentoo
sys-kernel/linux-headers:  6.12::gentoo (virtual/os-headers)
sys-libs/glibc:            2.40-r8::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo.git
    priority: -1000
    volatile: True
    sync-git-verify-commit-signature: yes

steam-overlay
    location: /var/db/repos/steam-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/steam-overlay.git
    masters: gentoo
    volatile: True

local
    location: /var/db/repos/local
    masters: gentoo
    priority: 10
    volatile: True

Binary Repositories:

gentoobinhost
    priority: 1
    sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64-v3

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/var/cache/portage/distfiles"
EMERGE_DEFAULT_OPTS=" --getbinpkg"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-march=native -O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance binpkg-request-signature buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox strict suidctl unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=native -O2 -pipe"
GENTOO_MIRRORS="https://mirror.leaseweb.com/gentoo/"
LANG="en_GB.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs"
LEX="flex"
LINGUAS="ru en bg"
PKGDIR="/var/cache/portage/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="10bit 256-color X a52 aac acl acpi ads aio alsa alt-svc amd64 amr amrenc ap apng avif base bash-completion blink bluetooth bluray bpf branding brotli bzip2 bzlib cairo caps cdb cdr celt cet cgroups clang cleartype cli conntrack corefonts crt crypt cryptsetup css cue curl daemon dap dav1d dbus dcc_video declarative default-lld default-stack-clash-protection devil dirac distinct-l djvu dns-over-tls dri drm dtmf dts dv dvb dvd dvdr dvdread eap-tls ecdh egl elfutils enca encode epoll epub exceptions exif faac faad farstream ffmpeg fftw fido2 flac fontconfig ftp fts3 g3dvl gbm gdbm gif gles gles2 gmp googledrive gost gpm graphite gsm gssapi gui h224 h281 h323 haptic hardened harfbuzz hdri heif http http2 hwaccel icccm icecast iceweasel iconv icu idn ilbc importd inotify introspection io-uring iproute2 ipv6 jabber javascript jpeg jpeg2k jpegxl json jumbo-build kaccounts kbd kde kdenlive kdexdeltas kdrive kerberos kf6compat lame large-stack lcms leaps-timezone libass libdrm libglvnd libkms libnotify libtirpc lm-sensors localstorage lock lspclient lto lvm lyrics lz4 lzma lzo mad mbim mdnsresponder-compat melt minizip mmap mmx mng mod modemmanager modplug mount mozdevelop mp3 mp4 mpeg mtp multilib multitarget musepack nat natspec ncurses netlink network networkmanager newnet nfs nftables nightly nls nptl nptlonly nsplugin nss numpy ogg openal opencl openconnect openexr opengl openh264 openmp openssl opus otf otr pam pango parallel-compiler pcre pcre16 pcre32 pdf pie pipewire pipewire-alsa pkcs11 png policykit postgres postproc ppds printsupport private-headers proprietary-codecs pulseaudio python qml qos qrcode qt5 qt6 rav1e raw readline realtime redland rfc3779 rls rtmp ru-dv ru-i ru-k sbc schroedinger screencast scripttools sctp sdl sdl2 seccomp secure-delete secureboot security-key semantic-desktop sensors sieve sip sipim smp soap sound speex spell sql sqlite srtp sse sse2 sse3 ssl ssse3 staging startup-notification static-pie svc svg svt-av1 system-bootstrap system-cairo system-cxx-headers system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-llvm system-png system-sqlite systemd taglib tdls test-rust text tftp theora thin threads threadsafe thunderbolt tiff tor-hardening tpm tray tree-sitter truetype twolame type1 udev udisks uki ukify uncommon-eap-types unicode unicode3 unlock-notify upower urandom usb user-session uvm v4l v4l2 vaapi video vorbis vpx vtv vulcan vulkan wasm wav wayland webchannel webp webui widgets win32codecs wma x264 x265 xattr xcb xfs xft xkb xml xmlrpc xmp xtables xulrunner xv xvfb xvid xxhash yescrypt zeroconf zic-slim zink zlib zram zrtp zstd" ABI_X86="64" ADA_TARGET="gcc_14" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 aes avx avx2 avx512_bf16 avx512_bitalg avx512_vbmi2 avx512_vnni avx512_vpopcntdq avx512bw avx512cd avx512dq avx512f avx512ifma avx512vbmi avx512vl f16c fma3 pclmul popcnt rdrand sha sse3 sse4_1 sse4_2 sse4a ssse3 vpclmulqdq" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="libinput evdev" KERNEL="linux" L10N="ru en bg en-US" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres17" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby32" VIDEO_CARDS="amdgpu radeonsi zink" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, MAKEOPTS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 1 Михаил 2025-04-26 14:15:48 UTC
address sanitizer output:

$ ASAN_OPTIONS=detect_leaks=0:fast_unwind_on_malloc=false:log_threads=1 wireshark

 ** (wireshark:552752) 13:04:08.467760 [Capture MESSAGE] -- Capture Start ...
 ** (wireshark:552752) 13:04:09.058177 [Capture MESSAGE] -- Capture started
 ** (wireshark:552752) 13:04:09.058213 [Capture MESSAGE] -- File: "/tmp/wireshark_wlp1s0XGMJ52.pcapng"
 ** (wireshark:552752) 13:04:34.316473 [Capture MESSAGE] -- Capture Stop ...
 ** (wireshark:552752) 13:04:34.335408 [Capture MESSAGE] -- Capture stopped.
=================================================================
==552752==ERROR: AddressSanitizer: heap-use-after-free on address 0x51d0003e9e90 at pc 0x7803310f8896 bp 0x7ffd0ed8dd40 sp 0x7ffd0ed8d4e8
READ of size 592 at 0x51d0003e9e90 thread T0
    #0 0x7803310f8895 in memcpy (/usr/lib/gcc/x86_64-pc-linux-gnu/14/libasan.so.8+0xf8895)
    #1 0x78032fa1fc55  (/usr/lib64/libQt6Core.so.6+0x21fc55)
    #2 0x78032f9fecbe  (/usr/lib64/libQt6Core.so.6+0x1fecbe)
    #3 0x78032f9feebf  (/usr/lib64/libQt6Core.so.6+0x1feebf)
    #4 0x78032f9ffded in QAbstractAnimationPrivate::setState(QAbstractAnimation::State) (/usr/lib64/libQt6Core.so.6+0x1ffded)
    #5 0x78032fa00a85  (/usr/lib64/libQt6Core.so.6+0x200a85)
    #6 0x78032faebebc  (/usr/lib64/libQt6Core.so.6+0x2ebebc)
    #7 0x78032faaa3d2 in QObject::destroyed(QObject*) (/usr/lib64/libQt6Core.so.6+0x2aa3d2)
    #8 0x78032facc54d in QObject::~QObject() (/usr/lib64/libQt6Core.so.6+0x2cc54d)
    #9 0x7802fa82f3ea in Breeze::AnimationData::~AnimationData() (/usr/lib64/qt6/plugins/styles/breeze6.so+0x213ea)
    #10 0x7802fa82f48c in Breeze::GenericData::~GenericData() (/usr/lib64/qt6/plugins/styles/breeze6.so+0x2148c)
    #11 0x7802fa82f534 in Breeze::EnableData::~EnableData() (/usr/lib64/qt6/plugins/styles/breeze6.so+0x21534)
    #12 0x78032fa8dc2d in QObject::event(QEvent*) (/usr/lib64/libQt6Core.so.6+0x28dc2d)
    #13 0x780330d22214 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib64/libQt6Widgets.so.6+0x522214)
    #14 0x78032fb06eef in QCoreApplication::notifyInternal2(QObject*, QEvent*) (/usr/lib64/libQt6Core.so.6+0x306eef)
    #15 0x78032fb2ae56 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (/usr/lib64/libQt6Core.so.6+0x32ae56)
    #16 0x78032fa0595f  (/usr/lib64/libQt6Core.so.6+0x20595f)
    #17 0x78032fa059e5  (/usr/lib64/libQt6Core.so.6+0x2059e5)
    #18 0x78032fa05a64  (/usr/lib64/libQt6Core.so.6+0x205a64)
    #19 0x78031dc77c8a in __cxa_finalize (/usr/lib64/libc.so.6+0x3ec8a)
    #20 0x78032f8ca0b6  (/usr/lib64/libQt6Core.so.6+0xca0b6)

0x51d0003e9e90 is located 16 bytes inside of 2048-byte region [0x51d0003e9e80,0x51d0003ea680)
freed by thread T0 here:
    #0 0x7803310f9958  (/usr/lib/gcc/x86_64-pc-linux-gnu/14/libasan.so.8+0xf9958)
    #1 0x78032f9e2de0  (/usr/lib64/libQt6Core.so.6+0x1e2de0)
    #2 0x78032fa14027  (/usr/lib64/libQt6Core.so.6+0x214027)
    #3 0x78031dc77e5e in __call_tls_dtors (/usr/lib64/libc.so.6+0x3ee5e)
    #4 0x78031dc78269  (/usr/lib64/libc.so.6+0x3f269)
    #5 0x78031dc782bf in exit (/usr/lib64/libc.so.6+0x3f2bf)
    #6 0x5b90e3b464bd in exit_application /var/tmp/portage/net-analyzer/wireshark-4.4.5-r1/work/wireshark-4.4.5/ui/qt/main.cpp:131
    #7 0x5b90e3b4a06b in main /var/tmp/portage/net-analyzer/wireshark-4.4.5-r1/work/wireshark-4.4.5/ui/qt/main.cpp:1203
    #8 0x78031dc5f3ed  (/usr/lib64/libc.so.6+0x263ed)
    #9 0x78031dc5f4a8 in __libc_start_main (/usr/lib64/libc.so.6+0x264a8)
    #10 0x5b90e3658764 in _start (/usr/bin/wireshark+0xcd764)

previously allocated by thread T0 here:
    #0 0x7803310f9c18  (/usr/lib/gcc/x86_64-pc-linux-gnu/14/libasan.so.8+0xf9c18)
    #1 0x78032fa42b94 in QArrayData::reallocateUnaligned(QArrayData*, void*, long long, long long, QArrayData::AllocationOption) (/usr/lib64/libQt6Core.so.6+0x242b94)
    #2 0x78032fa1fd1c  (/usr/lib64/libQt6Core.so.6+0x21fd1c)
    #3 0x78032fa201d3  (/usr/lib64/libQt6Core.so.6+0x2201d3)
    #4 0x78032f9ffb65  (/usr/lib64/libQt6Core.so.6+0x1ffb65)
    #5 0x78032fa00043 in QAbstractAnimationPrivate::setState(QAbstractAnimation::State) (/usr/lib64/libQt6Core.so.6+0x200043)
    #6 0x7802fa83ffda in Breeze::WidgetStateData::updateState(bool) /var/tmp/portage/kde-plasma/breeze-6.3.4/work/breeze-6.3.4/kstyle/animations/breezewidgetstatedata.cpp:26
    #7 0x7802fa8391dd in Breeze::EnableData::eventFilter(QObject*, QEvent*) /var/tmp/portage/kde-plasma/breeze-6.3.4/work/breeze-6.3.4/kstyle/animations/breezeenabledata.cpp:23
    #8 0x78032fb06c93 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (/usr/lib64/libQt6Core.so.6+0x306c93)
    #9 0x780330d22204 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib64/libQt6Widgets.so.6+0x522204)
    #10 0x78032fb06eef in QCoreApplication::notifyInternal2(QObject*, QEvent*) (/usr/lib64/libQt6Core.so.6+0x306eef)
    #11 0x780330d049b7 in QWidgetPrivate::setEnabled_helper(bool) (/usr/lib64/libQt6Widgets.so.6+0x5049b7)
    #12 0x780330d04ac1 in QWidgetPrivate::setEnabled_helper(bool) (/usr/lib64/libQt6Widgets.so.6+0x504ac1)
    #13 0x5b90e3efcb70 in WiresharkMainWindow::mainStackChanged(int) /var/tmp/portage/net-analyzer/wireshark-4.4.5-r1/work/wireshark-4.4.5/ui/qt/wireshark_main_window_slots.cpp:1032
    #14 0x5b90e3ec2c28 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<int>, void, void (WiresharkMainWindow::*)(int)>::call(void (WiresharkMainWindow::*)(int), WiresharkMainWindow*, void**)::{lambda()#1}::operator()() const /usr/include/qt6/QtCore/qobjectdefs_impl.h:152
    #15 0x5b90e3ec2e3c in void QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<int>, void, void (WiresharkMainWindow::*)(int)>::call(void (WiresharkMainWindow::*)(int), WiresharkMainWindow*, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<int>, void, void (WiresharkMainWindow::*)(int)>::call(void (WiresharkMainWindow::*)(int), WiresharkMainWindow*, void**)::{lambda()#1}&&) /usr/include/qt6/QtCore/qobjectdefs_impl.h:65
    #16 0x5b90e3ec2e3c in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<int>, void, void (WiresharkMainWindow::*)(int)>::call(void (WiresharkMainWindow::*)(int), WiresharkMainWindow*, void**) /usr/include/qt6/QtCore/qobjectdefs_impl.h:151
    #17 0x5b90e3ec2e3c in void QtPrivate::FunctionPointer<void (WiresharkMainWindow::*)(int)>::call<QtPrivate::List<int>, void>(void (WiresharkMainWindow::*)(int), WiresharkMainWindow*, void**) /usr/include/qt6/QtCore/qobjectdefs_impl.h:199
    #18 0x5b90e3ec2f57 in QtPrivate::QCallableObject<void (WiresharkMainWindow::*)(int), QtPrivate::List<int>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /usr/include/qt6/QtCore/qobjectdefs_impl.h:570
    #19 0x78032faebebc  (/usr/lib64/libQt6Core.so.6+0x2ebebc)
    #20 0x780330b2ec01 in QStackedWidget::currentChanged(int) (/usr/lib64/libQt6Widgets.so.6+0x32ec01)
    #21 0x78032faebebc  (/usr/lib64/libQt6Core.so.6+0x2ebebc)
    #22 0x780330c89754 in QStackedLayout::currentChanged(int) (/usr/lib64/libQt6Widgets.so.6+0x489754)
    #23 0x780330d2eb02 in QStackedLayout::setCurrentIndex(int) (/usr/lib64/libQt6Widgets.so.6+0x52eb02)
    #24 0x780330d2ef23 in QStackedLayout::takeAt(int) (/usr/lib64/libQt6Widgets.so.6+0x52ef23)
    #25 0x780330c8851f  (/usr/lib64/libQt6Widgets.so.6+0x48851f)
    #26 0x780330d221f9 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib64/libQt6Widgets.so.6+0x5221f9)
    #27 0x78032fb06eef in QCoreApplication::notifyInternal2(QObject*, QEvent*) (/usr/lib64/libQt6Core.so.6+0x306eef)
    #28 0x78032facbd69 in QObjectPrivate::setParent_helper(QObject*) (/usr/lib64/libQt6Core.so.6+0x2cbd69)
    #29 0x78032facc29e in QObject::~QObject() (/usr/lib64/libQt6Core.so.6+0x2cc29e)

SUMMARY: AddressSanitizer: heap-use-after-free (/usr/lib/gcc/x86_64-pc-linux-gnu/14/libasan.so.8+0xf8895) in memcpy
Shadow bytes around the buggy address:
  0x51d0003e9c00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003e9c80: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003e9d00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003e9d80: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x51d0003e9e00: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
=>0x51d0003e9e80: fd fd[fd]fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003e9f00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003e9f80: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003ea000: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003ea080: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x51d0003ea100: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07 
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==552752==ABORTING
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-04-26 16:13:43 UTC
@qt: We'll add the patch to Wireshark, but may want to pull in those patches for Qt itself too.
Comment 3 Ionen Wolkens gentoo-dev 2025-04-26 16:27:54 UTC
(In reply to Sam James from comment #2)
> @qt: We'll add the patch to Wireshark, but may want to pull in those patches
> for Qt itself too.
What patches? Haven't looked at everything, but I checked the QTBUG link thinking it'd be that, but the fix commit is in Qt 6.8.3 and affected 6.8.2 is just waiting for stablereq to be done for cleanup.
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-04-26 16:28:53 UTC
Ah, sorry, I got the versions mixed up. Indeed.
Comment 5 Holger Hoffstätte 2025-04-26 16:33:28 UTC
While I cannot reproduce the crash, I have noticed the QT-related QThreadStorage warnings on exit:

$wireshark
<press ctrl-Q>
 ** (wireshark:15321) 18:10:30.446429 [GUI WARNING] -- QThreadStorage: entry 4 destroyed before end of thread 0x5631a0954a70
 ** (wireshark:15321) 18:10:30.446454 [GUI WARNING] -- QThreadStorage: entry 3 destroyed before end of thread 0x5631a0954a70
 ** (wireshark:15321) 18:10:30.446460 [GUI WARNING] -- QThreadStorage: entry 2 destroyed before end of thread 0x5631a0954a70

..which always seemed fishy and related to destructor ordering.
I'll give the MR patch a try.
Comment 6 Holger Hoffstätte 2025-04-26 16:58:10 UTC
The upstream commit fixed it (calling exit() is really not nice) so I made a PR. Enjoy :)
Comment 7 Larry the Git Cow gentoo-dev 2025-04-26 17:24:09 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2fdb70bfff9392d8634fcbd1ae44ae10fb3f0e75

commit 2fdb70bfff9392d8634fcbd1ae44ae10fb3f0e75
Author:     Holger Hoffstätte <holger@applied-asynchrony.com>
AuthorDate: 2025-04-26 16:52:58 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2025-04-26 17:23:39 +0000

    net-analyzer/wireshark: properly return from main()
    
    Closes: https://bugs.gentoo.org/954756
    Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
    Part-of: https://github.com/gentoo/gentoo/pull/41773
    Closes: https://github.com/gentoo/gentoo/pull/41773
    Signed-off-by: Sam James <sam@gentoo.org>

 .../wireshark/files/4.4.6-return-from-main.patch   | 59 ++++++++++++++++++++++
 ...k-4.4.6-r1.ebuild => wireshark-4.4.6-r2.ebuild} |  1 +
 2 files changed, 60 insertions(+)