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
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.
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.
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?
(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 ------
After removing the rc-file and starting skanlite again, it crashes again (as I expected).
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!