Bug 515746 - Skanlite crashes (segfaults) after start [even when no Scanner is connected, but also with connected scanner]
Summary: Skanlite crashes (segfaults) after start [even when no Scanner is connected, ...
Status: REPORTED
Alias: None
Product: Skanlite
Classification: Applications
Component: general (other bugs)
Version First Reported In: 25.12.2
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Kåre Särs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-02-08 22:28 UTC by obkdebugs2026
Modified: 2026-02-12 01:28 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
backtrace.txt original (no linenumbers added) (33.00 KB, text/plain)
2026-02-08 22:28 UTC, obkdebugs2026
Details

Note You need to log in before you can comment on or make changes to this bug.
Description obkdebugs2026 2026-02-08 22:28:53 UTC
Created attachment 189372 [details]
backtrace.txt original (no linenumbers added)

SUMMARY
Skanlite crashes (segfaults) after start, when no Scanner is connected


STEPS TO REPRODUCE
1. ensure no scanner is connected
2. start Skanlite (from command line without arguments)
3. When a window opens ("Looking for devices. Please wait.") just wait some seconds until the crash happens

OBSERVED RESULT
Skanlite crashes.


EXPECTED RESULT
Show empty list of Scanners (possibly  together with an additional message to connect a scanner)


SOFTWARE/OS VERSIONS
Arch Linux, x86_64, 6.18.7-arch1-1

Windowing System: Xorg, i3

$ pacman -Qi skanlite
Name            : skanlite
Version         : 25.12.2-1
Description     : Image Scanning Application
Architecture    : x86_64
URL             : https://apps.kde.org/skanlite/
Licenses        : GPL-2.0-or-later
Groups          : kde-applications  kde-graphics
Provides        : None
Depends On      : gcc-libs  glibc  kconfig  kconfigwidgets  kcoreaddons  kcrash  ki18n  kio  kxmlgui  kwidgetsaddons  libksane  qt6-base
Optional Deps   : None
Required By     : None
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 2.98 MiB
Packager        : Antonio Rojas <arojas@archlinux.org>
Build Date      : Di 03 Feb 2026 19:32:44 CET
Install Date    : Fr 06 Feb 2026 03:59:26 CET
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : Signature


ADDITIONAL INFORMATION
When the scanner is connected, the built-in Webcam of the Laptop is shown in the list of scanners as well as the scanner. The Webcam is selected by default then. It can be used, so Skanlite would read a still image from the Webcam.
When selecting the Scanner, it works well.



BACKTRACE AD-HOC VERSION:

GNU gdb (GDB) 17.1
Copyright (C) 2025 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://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 /usr/bin/skanlite...

This GDB supports auto-downloading debuginfo from the following URLs:
  <https://debuginfod.archlinux.org>
Enable debuginfod for this session? (y or [n]) y
Debuginfod has been enabled.
To make this setting permanent, add 'set debuginfod enabled on' to .gdbinit.
Reading symbols from /home/$USER/.cache/debuginfod_client/f0ea6ac0c830289a401ccd3ae6a8f245feff6db0/debuginfo...
[New LWP 18594]
[New LWP 18597]
[New LWP 18599]
[New LWP 18602]
[New LWP 18598]
[New LWP 18605]
[New LWP 18604]
[New LWP 18601]

⚠ warning: BFD: warning: /home/$USER/.cache/debuginfod_client/35a34da614a9796b4ee978923a75521cc0937ee3/debuginfo has a section extending past end of file

⚠ warning: `/home/$USER/.cache/debuginfod_client/35a34da614a9796b4ee978923a75521cc0937ee3/debuginfo': can't read symbols: file format not recognized.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `/usr/bin/skanlite'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  KSaneCore::Option::setValue (this=0x0, value=...) at /usr/include/c++/15.2.1/bits/unique_ptr.h:192
192           pointer    _M_ptr() const noexcept { return std::get<0>(_M_t); }
[Current thread is 1 (Thread 0x7f503971afc0 (LWP 18594))]
(gdb) bt
#0  KSaneCore::Option::setValue (this=0x0, value=...) at /usr/include/c++/15.2.1/bits/unique_ptr.h:192
#1  0x00007f50406a7eb2 in KSaneCore::Interface::setOptionsMap (this=0x55f2e046e700, options=...) at /usr/src/debug/ksanecore/ksanecore-25.12.2/src/interface.cpp:469
#2  0x00007f50428938b6 in KSaneIface::KSaneWidget::setOptionValues (this=0x55f2e046e670, options=...) at /usr/src/debug/libksane/libksane-25.12.2/src/ksanewidget.cpp:398
#3  0x000055f2bee3ad01 in Skanlite::applyScannerOptions (this=0x7fff70359c00, opts=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:665
#4  0x000055f2bee374cb in Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:684
#5  Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:672
#6  Skanlite::Skanlite (parent=0x0, this=0x7fff70359c00, device=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:234
#7  main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/skanlite/skanlite-25.12.2/src/main.cpp:75
(gdb) frame 0
#0  KSaneCore::Option::setValue (this=0x0, value=...) at /usr/include/c++/15.2.1/bits/unique_ptr.h:192
192           pointer    _M_ptr() const noexcept { return std::get<0>(_M_t); }
(gdb) l
187           }
188
189           _GLIBCXX23_CONSTEXPR
190           pointer&   _M_ptr() noexcept { return std::get<0>(_M_t); }
191           _GLIBCXX23_CONSTEXPR
192           pointer    _M_ptr() const noexcept { return std::get<0>(_M_t); }
193           _GLIBCXX23_CONSTEXPR
194           _Dp&       _M_deleter() noexcept { return std::get<1>(_M_t); }
195           _GLIBCXX23_CONSTEXPR
196           const _Dp& _M_deleter() const noexcept { return std::get<1>(_M_t); }
(gdb) frame 1
Downloading 14.41 K source file /usr/src/debug/ksanecore/ksanecore-25.12.2/src/interface.cpp
#1  0x00007f50406a7eb2 in KSaneCore::Interface::setOptionsMap (this=0x55f2e046e700, options=...) at /usr/src/debug/ksanecore/ksanecore-25.12.2/src/interface.cpp:469
469         if (resolutionOption->setValue(value)) {
(gdb) l
464             }
465         }
466
467         // Apply resolution value at the latest, as this option is likely
468         // reset to a default value by SANE when setting other options
469         if (resolutionOption->setValue(value)) {
470             ret++;
471         }
472
473         return ret;
(gdb) frame 2
Downloading 18.96 K source file /usr/src/debug/libksane/libksane-25.12.2/src/ksanewidget.cpp
#2  0x00007f50428938b6 in KSaneIface::KSaneWidget::setOptionValues (this=0x55f2e046e670, options=...) at /usr/src/debug/libksane/libksane-25.12.2/src/ksanewidget.cpp:398
398         ret = d->m_ksaneCoreInterface->setOptionsMap(options);
(gdb) l
393
394     int KSaneWidget::setOptionValues(const QMap <QString, QString> &options)
395     {
396         int ret = 0;
397
398         ret = d->m_ksaneCoreInterface->setOptionsMap(options);
399
400         if ((d->m_splitGamChB) &&
401                 (d->m_optGamR) &&
402                 (d->m_optGamG) &&
(gdb) frame 3
Downloading 30.59 K source file /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp
#3  0x000055f2bee3ad01 in Skanlite::applyScannerOptions (this=0x7fff70359c00, opts=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:665
665         if (m_ksanew->setOptionValues(opts) == -1) {
(gdb) l
660         applyScannerOptions(m_defaultScanOpts);
661     }
662
663     void Skanlite::applyScannerOptions(const QMap<QString, QString> &opts)
664     {
665         if (m_ksanew->setOptionValues(opts) == -1) {
666             m_pendingApplyScanOpts = opts;
667         } else {
668             m_pendingApplyScanOpts.clear();
669         }
(gdb) frame 4
#4  0x000055f2bee374cb in Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:684
684             applyScannerOptions(opts);
(gdb) l
679                 return;
680             }
681
682             QMap<QString, QString> opts;
683             readScannerOptions(QStringLiteral("Options For %1").arg(m_deviceName), opts);
684             applyScannerOptions(opts);
685         }
686     }
687
688     void Skanlite::alertUser(int type, const QString &strStatus)
(gdb) frame 5
#5  Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:672
672     void Skanlite::loadScannerOptions()
(gdb) l
667         } else {
668             m_pendingApplyScanOpts.clear();
669         }
670     }
671
672     void Skanlite::loadScannerOptions()
673     {
674         if (!m_deviceName.isEmpty()) {
675             KConfigGroup saving(KSharedConfig::openConfig(), QStringLiteral("Image Saving"));
676             m_saveLocation->setStartNumber(saving.readEntry("NumberStartsFrom", 1));
(gdb) frame 6
#6  Skanlite::Skanlite (parent=0x0, this=0x7fff70359c00, device=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:234
234         loadScannerOptions();
(gdb) l
229
230         // save the default sane options for later use
231         m_ksanew->getOptionValues(m_defaultScanOpts);
232
233         // load saved options
234         loadScannerOptions();
235
236         m_firstImage = true;
237         m_ksanew->setFocus();
238
(gdb) frame 7
Downloading 3.21 K source file /usr/src/debug/skanlite/skanlite-25.12.2/src/main.cpp
#7  main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/skanlite/skanlite-25.12.2/src/main.cpp:75
75          Skanlite skanliteDialog(deviceName, nullptr);
(gdb) l
70          aboutData.processCommandLine(&parser);
71
72          const QString deviceName = parser.value(deviceOption);
73          qCDebug(SKANLITE_LOG) << QStringLiteral("deviceOption value=%1").arg(deviceName);
74
75          Skanlite skanliteDialog(deviceName, nullptr);
76
77          skanliteDialog.show();
78
79          QShortcut *prevShortcut = new QShortcut(QKeySequence(QStringLiteral("Ctrl+Q")), &skanliteDialog);
(gdb) bt
#0  KSaneCore::Option::setValue (this=0x0, value=...) at /usr/include/c++/15.2.1/bits/unique_ptr.h:192
#1  0x00007f50406a7eb2 in KSaneCore::Interface::setOptionsMap (this=0x55f2e046e700, options=...) at /usr/src/debug/ksanecore/ksanecore-25.12.2/src/interface.cpp:469
#2  0x00007f50428938b6 in KSaneIface::KSaneWidget::setOptionValues (this=0x55f2e046e670, options=...) at /usr/src/debug/libksane/libksane-25.12.2/src/ksanewidget.cpp:398
#3  0x000055f2bee3ad01 in Skanlite::applyScannerOptions (this=0x7fff70359c00, opts=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:665
#4  0x000055f2bee374cb in Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:684
#5  Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:672
#6  Skanlite::Skanlite (parent=0x0, this=0x7fff70359c00, device=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:234
#7  main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/skanlite/skanlite-25.12.2/src/main.cpp:75
(gdb) quit






BACKTRACE, GUIDELINES VERSION (but with line numbers prepended)

  1 +backtrace full
  2 #0  KSaneCore::Option::setValue (this=0x0, value=...) at /usr/include/c++/15.2.1/bits/unique_ptr.h:192
  3 No locals.
  4 #1  0x00007f50406a7eb2 in KSaneCore::Interface::setOptionsMap (this=0x55f2e046e700, options=...) at /usr/src/debug/ksanecore/ksanecore-25.12.2/src/interface.cpp:469
  5         optionMapCopy = {d = {d = {ptr = 0x55f2e069e500}}}
  6         i = <optimized out>
  7         ret = 0
  8         sourceOption = <optimized out>
  9         modeOption = <optimized out>
 10         resolutionOption = 0x0
 11         value = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 u'\000'}
 12 #2  0x00007f50428938b6 in KSaneIface::KSaneWidget::setOptionValues (this=0x55f2e046e670, options=...) at /usr/src/debug/libksane/libksane-25.12.2/src/ksanewidget.cpp:398
 13         ret = 0
 14 #3  0x000055f2bee3ad01 in Skanlite::applyScannerOptions (this=0x7fff70359c00, opts=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:665
 15 No locals.
 16 #4  0x000055f2bee374cb in Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:684
 17         saving = {<KConfigBase> = {_vptr.KConfigBase = 0x7f504259b758 <vtable for KConfigGroup+16>}, d = {d = {ptr = 0x55f2e069a6d0}}}
 18         opts = {d = {d = {ptr = 0x0}}}
 19 #5  Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:672
 20         saving = <optimized out>
 21         opts = <optimized out>
 22 #6  Skanlite::Skanlite (parent=0x0, this=0x7fff70359c00, device=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:234
 23         helpMenu = <optimized out>
 24         btnConfigure = <optimized out>
 25         window = {<KConfigBase> = {_vptr.KConfigBase = 0x7f504259b758 <vtable for KConfigGroup+16>}, d = {d = {ptr = 0x55f2e045cc70}}}
 26         rect = {wd = {<QtPrivate::QCheckedIntegers::CheckIntTypeHelper<int>> = {<No data fields>}, m_i = 1775}, ht = {<QtPrivate::QCheckedIntegers::CheckIntTypeHelper<int>> = {<No data fields>}, m_i = 400}}
 27         deviceVendor = {d = {d = 0x0, ptr = 0x7f5040c9300e <QString::_empty> u"", size = 0}, static _empty = 0 u'\000'}
 28         deviceModel = {d = {d = 0x0, ptr = 0x7f5040c9300e <QString::_empty> u"", size = 0}, static _empty = 0 u'\000'}
 29         mainLayout = <optimized out>
 30         dlgButtonBoxBottom = <optimized out>
 31         deviceName = {d = {d = 0x55f2e0500690, ptr = 0x55f2e05006a0 u"genesys:libusb:003:010", size = 22}, static _empty = 0 u'\000'}
 32 #7  main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/skanlite/skanlite-25.12.2/src/main.cpp:75
 33         app = {<QGuiApplication> = {<QCoreApplication> = {<QObject> = {_vptr.QObject = 0x7f504211cc88 <vtable for QApplication+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f5040cdb470 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0+272>, data = 0x7f504    0cdb360 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, static_metacall = 0x7f50409d3c40 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f5040e23a00 <_ZN7QObject36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_    meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, extradata = 0x0}}, d_ptr = {d = 0x55f2e034eb70}}, static staticMetaObject = {d = {superdata = {direct = 0x7f5040e23a80 <QObject::staticMetaObject>}, stringdata = 0x7f5040cdaa28 <_ZN16QCoreApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_135qt_meta_tag_ZN16QCoreApplicationE_tEEE.lto_priv.0+392>    , data = 0x7f5040cda8a0 <_ZN16QCoreApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_135qt_meta_tag_ZN16QCoreApplicationE_tEEE.lto_priv.0>, static_metacall = 0x7f5040973ef0 <QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f5040e23560 <_ZN16QCoreApplication36qt    _staticMetaObjectRelocatingContentIN12_GLOBAL__N_135qt_meta_tag_ZN16QCoreApplicationE_tEEE.lto_priv.0>, extradata = 0x0}}, static self = 0x7fff70359ab0}, static staticMetaObject = {d = {superdata = {direct = 0x7f5040e235e0 <QCoreApplication::staticMetaObject>}, stringdata = 0x7f50417d1230 <_ZN15QGuiApplication32qt_staticMetaObjectStaticConten    tIN12_GLOBAL__N_134qt_meta_tag_ZN15QGuiApplicationE_tEEE.lto_priv.0+752>, data = 0x7f50417d0f40 <_ZN15QGuiApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_134qt_meta_tag_ZN15QGuiApplicationE_tEEE.lto_priv.0>, static_metacall = 0x7f50411b51f0 <QGuiApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMet    aObjects = 0x0, metaTypes = 0x7f50418d04c0 <_ZN15QGuiApplication36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_134qt_meta_tag_ZN15QGuiApplicationE_tEEE.lto_priv.0>, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f50418d0de0 <QGuiApplication::staticMetaObject>}, stringdata = 0x7f5041fd15a8 <_ZN12QApplication    32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_131qt_meta_tag_ZN12QApplicationE_tEEE.lto_priv.0+392>, data = 0x7f5041fd1420 <_ZN12QApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_131qt_meta_tag_ZN12QApplicationE_tEEE.lto_priv.0>, static_metacall = 0x7f5041b08d60 <QApplication::qt_static_metacall(QObject*, QMetaObject::Call, int,     void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f504210dc00 <_ZN12QApplication36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_131qt_meta_tag_ZN12QApplicationE_tEEE.lto_priv.0>, extradata = 0x0}}}
 34         aboutData = {d = std::unique_ptr<KAboutDataPrivate> = {get() = 0x55f2e03b3590}}
 35         parser = {d = 0x55f2e03a8840}
 36         deviceOption = {d = {d = {ptr = 0x55f2e0427cc0}}}
 37         deviceName = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 u'\000'}
 38         skanliteDialog = {<QDialog> = {<QWidget> = {<QObject> = {_vptr.QObject = 0x55f2bee513c8 <vtable for Skanlite+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f5040cdb470 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0+272>, data = 0x7f5040cdb360 <_    ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, static_metacall = 0x7f50409d3c40 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f5040e23a00 <_ZN7QObject36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_meta_tag_Z    N7QObjectE_tEEE.lto_priv.0>, extradata = 0x0}}, d_ptr = {d = 0x55f2e0422780}}, <QPaintDevice> = {_vptr.QPaintDevice = 0x55f2bee515a0 <vtable for Skanlite+488>, painters = 0}, static staticMetaObject = {d = {superdata = {direct = 0x7f5040e23a80 <QObject::staticMetaObject>}, stringdata = 0x7f5042041360 <_ZN7QWidget32qt_staticMetaObjectStaticCon    tentIN12_GLOBAL__N_125qt_meta_tag_ZN7QWidgetE_tEEE.lto_priv.0+2176>, data = 0x7f5042040ae0 <_ZN7QWidget32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QWidgetE_tEEE.lto_priv.0>, static_metacall = 0x7f5041b67220 <QWidget::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7    f504211c620 <_ZN7QWidget36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QWidgetE_tEEE.lto_priv.0>, extradata = 0x0}}, data = 0x55f2e0422930}, static staticMetaObject = {d = {superdata = {direct = 0x7f504211cc00 <QWidget::staticMetaObject>}, stringdata = 0x7f5041fe56d8 <_ZN7QDialog32qt_staticMetaObjectStaticContentIN12_G    LOBAL__N_125qt_meta_tag_ZN7QDialogE_tEEE.lto_priv.0+376>, data = 0x7f5041fe5560 <_ZN7QDialog32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QDialogE_tEEE.lto_priv.0>, static_metacall = 0x7f5041dbf600 <QDialog::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f504211b740     <_ZN7QDialog36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QDialogE_tEEE.lto_priv.0>, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f5042107760 <QDialog::staticMetaObject>}, stringdata = 0x55f2bee4ca18 <Skanlite::qt_staticMetaObjectStaticContent<(anonymous namespace)::qt_meta_tag_ZN8Skan    liteE_t>+952>, data = 0x55f2bee4c660 <Skanlite::qt_staticMetaObjectStaticContent<(anonymous namespace)::qt_meta_tag_ZN8SkanliteE_t>>, static_metacall = 0x55f2bee395a0 <Skanlite::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x55f2bee51120 <Skanlite::qt_staticMetaObjectRelocatingContent<(a    nonymous namespace)::qt_meta_tag_ZN8SkanliteE_t>>, extradata = 0x0}}, m_ksanew = 0x55f2e046e670, m_saveProgressBar = 0x55f2e045a0c0, m_btnReselectDevice = 0x55f2e046dc30, m_currentSaveUrl = {d = 0x0}, m_saveUpdateTimer = {<QObject> = {_vptr.QObject = 0x7f5040e207d0 <vtable for QTimer+16>, static staticMetaObject = {d = {superdata = {direct =     0x0}, stringdata = 0x7f5040cdb470 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0+272>, data = 0x7f5040cdb360 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, static_metacall = 0x7f50409d3c40 <QObject::qt_static_metacall(QObject*,     QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f5040e23a00 <_ZN7QObject36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, extradata = 0x0}}, d_ptr = {d = 0x55f2e03af600}}, static staticMetaObject = {d = {superdata = {direct = 0x7f5040e23a80 <QObject::staticMetaObject>}    , stringdata = 0x7f5040cda1b8 <_ZN6QTimer32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_124qt_meta_tag_ZN6QTimerE_tEEE.lto_priv.0+280>, data = 0x7f5040cda0a0 <_ZN6QTimer32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_124qt_meta_tag_ZN6QTimerE_tEEE.lto_priv.0>, static_metacall = 0x7f50409eaa00 <QTimer::qt_static_metacall(QObject*, QMetaObje    ct::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f5040e23260 <_ZN6QTimer36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_124qt_meta_tag_ZN6QTimerE_tEEE.lto_priv.0>, extradata = 0x0}}}, m_settingsUi = {<Ui_SkanliteSettings> = {verticalLayout = 0x55f2e045b6b0, groupBox = 0x55f2e045b9a0, gridLayout = 0x55f2e045ba00, label_7     = 0x55f2e045bcb0, showB4Save = 0x55f2e045bda0, label_6 = 0x55f2e045c090, saveModeCB = 0x55f2e045b130, line = 0x55f2e0490d50, label = 0x55f2e0490fa0, label_2 = 0x55f2e0488740, hboxLayout = 0x55f2e0491440, imgPrefix = 0x55f2e04900a0, label_3 = 0x55f2e0487840, imgFormat = 0x55f2e0487f50, label_4 = 0x55f2e0500d10, horizontalLayout = 0x55f2e048493    0, setQuality = 0x55f2e0500f00, imgQualityFrame = 0x55f2e0502730, hboxLayout1 = 0x55f2e0501280, horizontalSlider = 0x55f2e05015a0, imgQuality = 0x55f2e044a870, line_2 = 0x55f2e048cd50, saveDirRequester = 0x55f2e049c710, generalGB = 0x55f2e04a1390, gridLayout_2 = 0x55f2e04a1410, setPreviewDPI = 0x55f2e04a1f20, previewDPI = 0x55f2e04a2240, u_di    sableSelections = 0x55f2e04f1610, horizontalSpacer = 0x55f2e04f2110, horizontalSpacer_2 = 0x55f2e04f2140, revertOptions = 0x55f2e04a2210, verticalSpacer = 0x55f2e04f25c0}, <No data fields>}, m_settingsDialog = 0x55f2e045b4c0, m_showImgDialog = 0x55f2e0688540, m_saveLocation = 0x55f2e0452a70, m_deviceName = {d = {d = 0x7f502815cce0, ptr = 0x7f    502815ccf0 u"v4l:/dev/video0", size = 15}, static _empty = 0 u'\000'}, m_deviceVendor = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 u'\000'}, m_deviceModel = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 u'\000'}, m_defaultScanOpts = {d = {d = {ptr = 0x55f2e069dea0}}}, m_pendingApplyScanOpts = {d = {d = {ptr = 0x0}}}, m_im    g = {<QPaintDevice> = {_vptr.QPaintDevice = 0x7f50418c4d28 <vtable for QImage+16>, painters = 0}, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f50417d4660 <_ZN6QImage32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_124qt_meta_tag_ZN6QImageE_tEEE.lto_priv.0+384>, data = 0x7f50417d44e0 <_ZN6QImage32qt_staticMetaOb    jectStaticContentIN12_GLOBAL__N_124qt_meta_tag_ZN6QImageE_tEEE.lto_priv.0>, static_metacall = 0x0, relatedMetaObjects = 0x0, metaTypes = 0x7f50418c71e0 <_ZN6QImage36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_124qt_meta_tag_ZN6QImageE_tEEE.lto_priv.0>, extradata = 0x0}}, d = 0x0}, m_dbusInterface = {<QObject> = {_vptr.QObject = 0x55f2b    ee516a8 <vtable for DBusInterface+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f5040cdb470 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0+272>, data = 0x7f5040cdb360 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjec    tE_tEEE.lto_priv.0>, static_metacall = 0x7f50409d3c40 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f5040e23a00 <_ZN7QObject36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, extradata = 0x0}}, d_ptr = {d = 0x55f2e0427ea0}}, stat    ic staticMetaObject = {d = {superdata = {direct = 0x7f5040e23a80 <QObject::staticMetaObject>}, stringdata = 0x55f2bee4c080 <_ZN13DBusInterface32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_132qt_meta_tag_ZN13DBusInterfaceE_tEEE.lto_priv.0+1312>, data = 0x55f2bee4bb60 <_ZN13DBusInterface32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_132qt_    meta_tag_ZN13DBusInterfaceE_tEEE.lto_priv.0>, static_metacall = 0x55f2bee45aa0 <DBusInterface::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x55f2bee50ee0 <_ZN13DBusInterface36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_132qt_meta_tag_ZN13DBusInterfaceE_tEEE.lto_priv.0>, extradata     = 0x0}}, m_msgBuffer = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x0, ptr = 0x0, size = 0}}}, m_filterList = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x55f2e051eec0, ptr = 0x55f2e051eed0    , size = 30}}, m_filter16BitList = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x55f2e0544a40, ptr = 0x55f2e0544a50, size = 2}}, m_firstImage = false}
 39         prevShortcut = <optimized out>
 40 +info registers
 41 rax            0x0                 0
 42 rbx            0x7fff70359770      140735075948400
 43 rcx            0x13                19
 44 rdx            0x0                 0
 45 rsi            0x7fff703597b0      140735075948464
 46 rdi            0x0                 0
 47 rbp            0x7fff70359810      0x7fff70359810
 48 rsp            0x7fff70359708      0x7fff70359708
 49 r8             0xa430bb12fc5a9c31  -6615582162389656527
 50 r9             0x30                48
 51 r10            0x31                49
 52 r11            0xfffffffffffffec0  -320
 53 r12            0x12                18
 54 r13            0x55f2e069e500      94501635482880
 55 r14            0x7fff703597b0      140735075948464
 56 r15            0x55f2e069e500      94501635482880
 57 rip            0x7f50406b0a44      0x7f50406b0a44 <KSaneCore::Option::setValue(QVariant const&)+4>
 58 eflags         0x10246             [ PF ZF IF RF ]
 59 cs             0x33                51
 60 ss             0x2b                43
 61 ds             0x0                 0
 62 es             0x0                 0
 63 fs             0x0                 0
 64 gs             0x0                 0
 65 fs_base        0x7f503971afc0      139982537863104
 66 gs_base        0x0                 0
 67 +info locals
 68 No locals.
 69 +x/16i $pc
 70 => 0x7f50406b0a44 <_ZN9KSaneCore6Option8setValueERK8QVariant+4>:  mov    0x10(%rdi),%rax
 71    0x7f50406b0a48 <_ZN9KSaneCore6Option8setValueERK8QVariant+8>:  mov    (%rax),%rdi
 72    0x7f50406b0a4b <_ZN9KSaneCore6Option8setValueERK8QVariant+11>: test   %rdi,%rdi
 73    0x7f50406b0a4e <_ZN9KSaneCore6Option8setValueERK8QVariant+14>: je     0x7f50406b0a60 <_ZN9KSaneCore6Option8setValueERK8QVariant+32>
 74    0x7f50406b0a50 <_ZN9KSaneCore6Option8setValueERK8QVariant+16>: mov    (%rdi),%rax
 75    0x7f50406b0a53 <_ZN9KSaneCore6Option8setValueERK8QVariant+19>: jmp    *0xe0(%rax)
 76    0x7f50406b0a59 <_ZN9KSaneCore6Option8setValueERK8QVariant+25>: nopl   0x0(%rax)
 77    0x7f50406b0a60 <_ZN9KSaneCore6Option8setValueERK8QVariant+32>: xor    %eax,%eax
 78    0x7f50406b0a62 <_ZN9KSaneCore6Option8setValueERK8QVariant+34>: ret
 79    0x7f50406b0a63:  nop
 80    0x7f50406b0a64:  nop
 81    0x7f50406b0a65:  data16 cs nopw 0x0(%rax,%rax,1)
 82    0x7f50406b0a70 <_ZN9KSaneCore6Option18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv>: endbr64
 83    0x7f50406b0a74 <_ZN9KSaneCore6Option18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv+4>: test   %esi,%esi
 84    0x7f50406b0a76 <_ZN9KSaneCore6Option18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv+6>: jne    0x7f50406b0a90 <_ZN9KSaneCore6Option18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv+32>
 85    0x7f50406b0a78 <_ZN9KSaneCore6Option18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv+8>: cmp    $0x1,%edx
 86 +thread apply all backtrace
 87 
 88 Thread 8 (Thread 0x7f50321a36c0 (LWP 18601)):
 89 +backtrace
 90 #0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
 91 #1  0x00007f50402a216c in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=a3@entry=1, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at cancellation.c:49
 92 #2  0x00007f50402a27dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x55f2e05a689c, expected=1, op=<optimized out>, abstime=0x7f50321a2990, cancel=true) at futex-internal.c:57
 93 #3  __futex_abstimed_wait_common (futex_word=futex_word@entry=0x55f2e05a689c, expected=expected@entry=1, clockid=clockid@entry=1, abstime=abstime@entry=0x7f50321a2990, private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
 94 #4  0x00007f50402a283f in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x55f2e05a689c, expected=expected@entry=1, clockid=clockid@entry=1, abstime=abstime@entry=0x7f50321a2990, private=private@entry=0) at futex-internal.c:139
 95 #5  0x00007f50402a50a8 in __pthread_cond_wait_common (cond=0x55f2e05a6878, mutex=0x55f2e05a6850, clockid=<optimized out>, abstime=0x7f50321a2990) at pthread_cond_wait.c:421
 96 #6  ___pthread_cond_timedwait64 (cond=0x55f2e05a6878, mutex=0x55f2e05a6850, abstime=0x7f50321a2990) at pthread_cond_wait.c:478
 97 #7  0x00007f5040b362a5 in QWaitConditionPrivate::wait_relative (this=0x55f2e05a6850, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:58
 98 #8  QWaitConditionPrivate::wait (this=0x55f2e05a6850, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:66
 99 #9  QWaitCondition::wait (this=<optimized out>, mutex=0x55f2e05dd068, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:146
100 #10 0x00007f5040a91189 in QThreadPoolThread::run (this=0x55f2e05dbaf0) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthreadpool.cpp:120
101 #11 0x00007f5040b31c7a in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:448
102 #12 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:373
103 #13 QThreadPrivate::start (arg=0x55f2e05dbaf0) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:422
104 #14 0x00007f50402a598b in start_thread (arg=<optimized out>) at pthread_create.c:448
105 #15 0x00007f5040329a0c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
106 
107 Thread 7 (Thread 0x7f501fc7d6c0 (LWP 18604)):
108 +backtrace
109 #0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
110 #1  0x00007f50402a216c in __internal_syscall_cancel (a1=a1@entry=139981976767456, a2=a2@entry=2, a3=a3@entry=-1, a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=0, nr=7) at cancellation.c:49
111 #2  0x00007f50402a21b4 in __syscall_cancel (a1=a1@entry=139981976767456, a2=a2@entry=2, a3=a3@entry=-1, a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=0, nr=7) at cancellation.c:75
112 #3  0x00007f504031c4ee in __GI___poll (fds=fds@entry=0x7f5018000be0, nfds=nfds@entry=2, timeout=timeout@entry=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
113 #4  0x00007f5030aab433 in poll (__fds=<optimized out>, __nfds=<optimized out>, __timeout=<optimized out>, __fds=<optimized out>, __nfds=<optimized out>, __timeout=<optimized out>) at /usr/include/bits/poll2.h:44
114 #5  poll_func (ufds=0x7f5018000be0, nfds=2, timeout=-1, userdata=0x7f5028153c80) at /usr/src/debug/avahi/avahi/avahi-common/thread-watch.c:56
115 #6  0x00007f5030aad863 in avahi_simple_poll_run (s=s@entry=0x7f50280bef80) at /usr/src/debug/avahi/avahi/avahi-common/simple-watch.c:527
116 #7  0x00007f5030aad9a9 in avahi_simple_poll_iterate (timeout=<optimized out>, s=0x7f50280bef80) at /usr/src/debug/avahi/avahi/avahi-common/simple-watch.c:602
117 #8  avahi_simple_poll_iterate (s=0x7f50280bef80, timeout=<optimized out>) at /usr/src/debug/avahi/avahi/avahi-common/simple-watch.c:596
118 #9  0x00007f5030aadb8e in avahi_simple_poll_loop (s=0x7f50280bef80) at /usr/src/debug/avahi/avahi/avahi-common/simple-watch.c:646
119 #10 0x00007f5030aadbf3 in thread (userdata=0x7f5028153c70) at /usr/src/debug/avahi/avahi/avahi-common/thread-watch.c:71
120 #11 0x00007f50402a598b in start_thread (arg=<optimized out>) at pthread_create.c:448
121 #12 0x00007f5040329a0c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
122 
123 Thread 6 (Thread 0x7f501f47c6c0 (LWP 18605)):
124 +backtrace
125 #0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
126 #1  0x00007f50402a216c in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=a3@entry=0, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at cancellation.c:49
127 #2  0x00007f50402a27dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x55f2e05fc088, expected=0, op=<optimized out>, abstime=0x7f501f47b990, cancel=true) at futex-internal.c:57
128 #3  __futex_abstimed_wait_common (futex_word=futex_word@entry=0x55f2e05fc088, expected=expected@entry=0, clockid=clockid@entry=1, abstime=abstime@entry=0x7f501f47b990, private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
129 #4  0x00007f50402a283f in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x55f2e05fc088, expected=expected@entry=0, clockid=clockid@entry=1, abstime=abstime@entry=0x7f501f47b990, private=private@entry=0) at futex-internal.c:139
130 #5  0x00007f50402a50a8 in __pthread_cond_wait_common (cond=0x55f2e05fc068, mutex=0x55f2e05fc040, clockid=<optimized out>, abstime=0x7f501f47b990) at pthread_cond_wait.c:421
131 #6  ___pthread_cond_timedwait64 (cond=0x55f2e05fc068, mutex=0x55f2e05fc040, abstime=0x7f501f47b990) at pthread_cond_wait.c:478
132 #7  0x00007f5040b362a5 in QWaitConditionPrivate::wait_relative (this=0x55f2e05fc040, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:58
133 #8  QWaitConditionPrivate::wait (this=0x55f2e05fc040, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:66
134 #9  QWaitCondition::wait (this=<optimized out>, mutex=0x55f2e05dd068, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:146
135 #10 0x00007f5040a91189 in QThreadPoolThread::run (this=0x55f2e0588000) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthreadpool.cpp:120
136 #11 0x00007f5040b31c7a in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:448
137 #12 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:373
138 #13 QThreadPrivate::start (arg=0x55f2e0588000) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:422
139 #14 0x00007f50402a598b in start_thread (arg=<optimized out>) at pthread_create.c:448
140 #15 0x00007f5040329a0c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
141 
142 Thread 5 (Thread 0x7f50388836c0 (LWP 18598)):
143 +backtrace
144 #0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
145 #1  0x00007f50402a216c in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=8, a6=a6@entry=0, nr=271) at cancellation.c:49
146 #2  0x00007f50402a21b4 in __syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=8, a6=a6@entry=0, nr=271) at cancellation.c:75
147 #3  0x00007f504031ca36 in __GI_ppoll (fds=fds@entry=0x7f502c001420, nfds=nfds@entry=2, timeout=<optimized out>, timeout@entry=0x0, sigmask=sigmask@entry=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:42
148 #4  0x00007f503fb51784 in ppoll (__fds=0x7f502c001420, __nfds=2, __timeout=0x0, __ss=0x0) at /usr/include/bits/poll2.h:101
149 #5  g_main_context_poll_unlocked (priority=<optimized out>, context=0x7f502c000d00, timeout_usec=<optimized out>, fds=0x7f502c001420, n_fds=2) at ../glib/glib/gmain.c:4811
150 #6  g_main_context_iterate_unlocked (context=context@entry=0x7f502c000d00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4485
151 #7  0x00007f503fb51865 in g_main_context_iteration (context=0x7f502c000d00, may_block=1) at ../glib/glib/gmain.c:4556
152 #8  0x00007f5040c4fcb2 in QEventDispatcherGlib::processEvents (this=0x7f502c000be0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399
153 #9  0x00007f5040976cf6 in QEventLoop::processEvents (this=0x7f50388829f0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
154 #10 QEventLoop::exec (this=0x7f50388829f0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
155 #11 0x00007f5040a9277e in QThread::exec (this=this@entry=0x7f50419fee20 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread.cpp:672
156 #12 0x00007f504197607e in QDBusConnectionManager::run (this=0x7f50419fee20 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qt6-base/qtbase/src/dbus/qdbusconnectionmanager.cpp:145
157 #13 0x00007f5040b31c7a in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:448
158 #14 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:373
159 #15 QThreadPrivate::start (arg=0x7f50419fee20 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:422
160 #16 0x00007f50402a598b in start_thread (arg=<optimized out>) at pthread_create.c:448
161 #17 0x00007f5040329a0c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
162 
163 Thread 4 (Thread 0x7f50319a26c0 (LWP 18602)):
164 +backtrace
165 #0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
166 #1  0x00007f50402a216c in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=a3@entry=0, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at cancellation.c:49
167 #2  0x00007f50402a27dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x55f2e05aa268, expected=0, op=<optimized out>, abstime=0x7f50319a1990, cancel=true) at futex-internal.c:57
168 #3  __futex_abstimed_wait_common (futex_word=futex_word@entry=0x55f2e05aa268, expected=expected@entry=0, clockid=clockid@entry=1, abstime=abstime@entry=0x7f50319a1990, private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
169 #4  0x00007f50402a283f in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x55f2e05aa268, expected=expected@entry=0, clockid=clockid@entry=1, abstime=abstime@entry=0x7f50319a1990, private=private@entry=0) at futex-internal.c:139
170 #5  0x00007f50402a50a8 in __pthread_cond_wait_common (cond=0x55f2e05aa248, mutex=0x55f2e05aa220, clockid=<optimized out>, abstime=0x7f50319a1990) at pthread_cond_wait.c:421
171 #6  ___pthread_cond_timedwait64 (cond=0x55f2e05aa248, mutex=0x55f2e05aa220, abstime=0x7f50319a1990) at pthread_cond_wait.c:478
172 #7  0x00007f5040b362a5 in QWaitConditionPrivate::wait_relative (this=0x55f2e05aa220, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:58
173 #8  QWaitConditionPrivate::wait (this=0x55f2e05aa220, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:66
174 #9  QWaitCondition::wait (this=<optimized out>, mutex=0x55f2e05dd068, deadline=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:146
175 #10 0x00007f5040a91189 in QThreadPoolThread::run (this=0x55f2e05dc1b0) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthreadpool.cpp:120
176 #11 0x00007f5040b31c7a in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:448
177 #12 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:373
178 #13 QThreadPrivate::start (arg=0x55f2e05dc1b0) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:422
179 #14 0x00007f50402a598b in start_thread (arg=<optimized out>) at pthread_create.c:448
180 #15 0x00007f5040329a0c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
181 
182 Thread 3 (Thread 0x7f50332cc6c0 (LWP 18599)):
183 +backtrace
184 #0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
185 #1  0x00007f50402a216c in __internal_syscall_cancel (a1=a1@entry=139982432680688, a2=a2@entry=2, a3=a3@entry=-1, a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=0, nr=7) at cancellation.c:49
186 #2  0x00007f50402a21b4 in __syscall_cancel (a1=a1@entry=139982432680688, a2=a2@entry=2, a3=a3@entry=-1, a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=0, nr=7) at cancellation.c:75
187 #3  0x00007f504031c4ee in __GI___poll (fds=fds@entry=0x7f50332cbaf0, nfds=nfds@entry=2, timeout=timeout@entry=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
188 #4  0x00007f503a71abac in poll (__fds=<optimized out>, __nfds=<optimized out>, __timeout=<optimized out>, __fds=<optimized out>, __nfds=<optimized out>, __timeout=<optimized out>) at /usr/include/bits/poll2.h:44
189 #5  linux_udev_event_thread_main (arg=<optimized out>) at os/linux_udev.c:183
190 #6  0x00007f50402a598b in start_thread (arg=<optimized out>) at pthread_create.c:448
191 #7  0x00007f5040329a0c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
192 
193 Thread 2 (Thread 0x7f50391136c0 (LWP 18597)):
194 +backtrace
195 #0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
196 #1  0x00007f50402a216c in __internal_syscall_cancel (a1=a1@entry=139982531537208, a2=a2@entry=1, a3=a3@entry=-1, a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=0, nr=7) at cancellation.c:49
197 #2  0x00007f50402a21b4 in __syscall_cancel (a1=a1@entry=139982531537208, a2=a2@entry=1, a3=a3@entry=-1, a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=0, nr=7) at cancellation.c:75
198 #3  0x00007f504031c4ee in __GI___poll (fds=fds@entry=0x7f5039112938, nfds=nfds@entry=1, timeout=timeout@entry=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
199 #4  0x00007f503d30620b in poll (__timeout=-1, __nfds=1, __fds=0x7f5039112938) at /usr/include/bits/poll2.h:39
200 #5  _xcb_conn_wait (c=c@entry=0x55f2e0364a00, vector=vector@entry=0x0, count=count@entry=0x0, cond=<optimized out>) at /usr/src/debug/libxcb/libxcb-1.17.0/src/xcb_conn.c:510
201 #6  0x00007f503d307f3d in _xcb_conn_wait (count=0x0, vector=0x0, cond=0x55f2e0364a40, c=0x55f2e0364a00) at /usr/src/debug/libxcb/libxcb-1.17.0/src/xcb_conn.c:476
202 #7  xcb_wait_for_event (c=0x55f2e0364a00) at /usr/src/debug/libxcb/libxcb-1.17.0/src/xcb_in.c:703
203 #8  0x00007f50395a7ca9 in QXcbEventQueue::run (this=0x55f2e035ef30) at /usr/src/debug/qt6-base/qtbase/src/plugins/platforms/xcb/qxcbeventqueue.cpp:194
204 #9  0x00007f5040b31c7a in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:448
205 #10 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:373
206 #11 QThreadPrivate::start (arg=0x55f2e035ef30) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:422
207 #12 0x00007f50402a598b in start_thread (arg=<optimized out>) at pthread_create.c:448
208 #13 0x00007f5040329a0c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
209 
210 Thread 1 (Thread 0x7f503971afc0 (LWP 18594)):
211 +backtrace
212 #0  KSaneCore::Option::setValue (this=0x0, value=...) at /usr/include/c++/15.2.1/bits/unique_ptr.h:192
213 #1  0x00007f50406a7eb2 in KSaneCore::Interface::setOptionsMap (this=0x55f2e046e700, options=...) at /usr/src/debug/ksanecore/ksanecore-25.12.2/src/interface.cpp:469
214 #2  0x00007f50428938b6 in KSaneIface::KSaneWidget::setOptionValues (this=0x55f2e046e670, options=...) at /usr/src/debug/libksane/libksane-25.12.2/src/ksanewidget.cpp:398
215 #3  0x000055f2bee3ad01 in Skanlite::applyScannerOptions (this=0x7fff70359c00, opts=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:665
216 #4  0x000055f2bee374cb in Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:684
217 #5  Skanlite::loadScannerOptions (this=0x7fff70359c00) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:672
218 #6  Skanlite::Skanlite (parent=0x0, this=0x7fff70359c00, device=...) at /usr/src/debug/skanlite/skanlite-25.12.2/src/skanlite.cpp:234
219 #7  main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/skanlite/skanlite-25.12.2/src/main.cpp:75
220 +quit
Comment 1 obkdebugs2026 2026-02-11 11:20:51 UTC
CORRECTION:
skanlite crashes always, even with connected scanner.

The information, that skanlite works with connected scanner was from remembering some days ago, that it worked.
(I started skanlite for some other reason, not to scan something, when I encountered the crash.)

So the "it works with scanner" was from before 2026-02-06, when the package 25.12.2-1 was installed.
This implies that the bug is new, coming in with the new package.
Comment 2 obkdebugs2026 2026-02-11 11:31:04 UTC
At the time, when skanlite was working, but showed the Webcam instead of the Scanner as Default,
the order in the Menue was:
1.: Webcam
2.: Scanner

Or counted from 0:
0: Webcam
1: Scanner

I had to select the scanner by hand via the menue.

Without looking at the Code, I would guess, the crash might be an off-by-one-problem.
Shift the two entries in the list, so that only the Scanner appears in the list (index >= 0).
Index of Webcam is then <0, more explicitly -1 in this case.
Then setting the Webcam as Default without checking on Index >=0 would use -1 as an array index.
Just a guess, but maybe a hint.
Comment 3 Kåre Särs 2026-02-11 13:13:10 UTC
Thanks for the report!

From the crash log I can see that Skanlite is trying to open "genesys:libusb:003:010"

I'm suspecting that the "try to open the previous scanner" somehow messes things up. Can you attach your .config/skanliterc here and then try to remove the file and restart?
Comment 4 obkdebugs2026 2026-02-12 00:54:15 UTC
(In reply to Kåre Särs from comment #3)
> Thanks for the report!
> 
> From the crash log I can see that Skanlite is trying to open
> "genesys:libusb:003:010"
> 
> I'm suspecting that the "try to open the previous scanner" somehow messes
> things up. Can you attach your .config/skanliterc here and then try to
> remove the file and restart?

I guess the skanliterc file has been changed in the meantime, when trying again to start skanlite.
Also I don't see any device settings there...

I see no attach-button, so I paste it here:

------
[General]
DisableAutoSelection=false
PreviewDPI=100
SetPreviewDPI=false

[Image Saving]
ImgFormat=image/png
ImgQuality=90
Location=file:///home/USERDIR/datastore/scans
NamePrefix=Bild-
NumberStartsFrom=29
SaveMode=0
SetQuality=false
ShowBeforeSave=true
------
Comment 5 obkdebugs2026 2026-02-12 00:55:16 UTC
After removing the rc-file and starting skanlite again, it crashes again (as I expected).
Comment 6 obkdebugs2026 2026-02-12 01:28:05 UTC
When I use the -d Option and set it to the string that I get from lsusb for the Scanner, then skanlite opens the selection window for devices, but does not select the scanner. The webcam (first position) is selected by default.

If I use this device to scan, I get a crash.

Trying again with -d and the same string for the scanner, but this time selecting the Scanner from the Menue, then the Scanning-munue opens and I can scan from the Scanner.
And if I afterwards press "Reselect scanner device" and select the Webcam, I can use it too.

So with this trick I can scan from Scanner as well as Webcam, but have some strange workflow to work around the bug.


------- wtf -------

After I tried this some times, I could start skanlite without command line arguments and the Scan-Menue starts directly - without the extra menue that asks for Device selection.
A new .config/skanliterc has been created after I configured a little bid, and it looks like this:
------
[Image Saving]
NumberStartsFrom=1
------

After removing it, crash again.
Copying the rc-settings back to the rc-file, still crashing,
until using -d switch again.
Even any non-empty string seems to avoid the crash at that point.
And after this has been used crashfree going directly into the Scan-Menue.

Removed the rc-file again, but this time no crash.
So, the crash is not always reproducible!