Package: fbreader; Maintainer for fbreader is Debian QA Group <packages@qa.debian.org>; Source for fbreader is src:fbreader (PTS, buildd, popcon).
Reported by: Antoine Beaupre <anarcat@debian.org>
Date: Mon, 7 Oct 2019 04:03:02 UTC
Severity: important
Found in version fbreader/0.12.10dfsg2-3
Reply or subscribe to this bug.
View this report as an mbox folder, status mbox, maintainer mbox
Report forwarded
to debian-bugs-dist@lists.debian.org, Eugene V. Lyubimkin <jackyf@debian.org>:
Bug#941886; Package fbreader.
(Mon, 07 Oct 2019 04:03:05 GMT) (full text, mbox, link).
Acknowledgement sent
to Antoine Beaupre <anarcat@debian.org>:
New Bug report received and forwarded. Copy sent to Eugene V. Lyubimkin <jackyf@debian.org>.
(Mon, 07 Oct 2019 04:03:05 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: fbreader
Version: 0.12.10dfsg2-3
Severity: important
After starting fbreader (which takes 30 seconds), I go to the library
and hit settings. There I configure my ebook library (~/books), click
the "Look for books in subdirectories" button, and hit "OK".
After a little scanning, it totally crashes with the following backtrace:
(gdb) run
Starting program: /usr/bin/fbreader
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
loading /usr/lib/zlibrary/ui/zlui-qt4.so
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7ed10a2 in ZLZipDir::collectFiles(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool) () from /usr/lib/libzlcore.so.0.13
(gdb) br
Breakpoint 1 at 0x7ffff7ed10a2
(gdb) bt
#0 0x00007ffff7ed10a2 in ZLZipDir::collectFiles(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool) () at /usr/lib/libzlcore.so.0.13
#1 0x0000555555707015 in BooksDBUtil::resetZipInfo(ZLFile const&) (zipFile=...) at ./fbreader/../zlibrary/core/include/shared_ptr.h:236
#2 0x00005555557071be in BooksDBUtil::listZipEntries(ZLFile const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&) (zipFile=..., entries=std::vector of length 0, capacity 0) at ./fbreader/../zlibrary/core/include/ZLFile.h:99
#3 0x00005555555cfbdf in Library::collectBookFileNames(std::set<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&) const
(this=0x5555559ef710, bookFileNames=std::set with 87 elements = {...}) at Library.cpp:83
#4 0x00005555555d0083 in Library::rebuildBookSet() const (this=this@entry=0x5555559ef710) at Library.cpp:114
#5 0x00005555555d1390 in LibrarySynchronizer::run() (this=0x7fffffffb3b0) at Library.cpp:170
#6 0x00007ffff7fb7ede in ZLQtProgressDialog::run(ZLRunnable&) () at /usr/lib/zlibrary/ui/zlui-qt4.so
#7 0x00007ffff7ed5314 in ZLDialogManager::wait(ZLResourceKey const&, ZLRunnable&) const () at /usr/lib/libzlcore.so.0.13
#8 0x00005555555cd23d in Library::synchronize() const (this=this@entry=0x5555559ef710) at /usr/include/c++/8/bits/basic_string.h:936
#9 0x00005555555cd2e9 in Library::authors() const (this=0x5555559ef710) at Library.cpp:310
#10 0x00005555555a98ee in LibraryByAuthorView::makeUpToDate() (this=0x5555557ec4d0) at LibraryByAuthorView.cpp:122
#11 0x00005555555896ca in LibraryView::paint() (this=0x5555557ec4d0) at LibraryView.cpp:38
#12 0x00007ffff7fbba6e in ZLQtViewWidget::Widget::paintEvent(QPaintEvent*) () at /usr/lib/zlibrary/ui/zlui-qt4.so
#13 0x00007ffff59aca28 in QWidget::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#14 0x00007ffff595aa2c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#15 0x00007ffff5961212 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#16 0x00007ffff63edafb in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#17 0x00007ffff59a7203 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#18 0x00007ffff59a7dfa in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#19 0x00007ffff59a6f09 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007ffff59a7dfa in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007ffff59a6f09 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#22 0x00007ffff5b5faa8 in () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#23 0x00007ffff599b350 in QWidgetPrivate::syncBackingStore() () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#24 0x00007ffff59ad138 in QWidget::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007ffff5d4c84b in QMainWindow::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007ffff595aa2c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#27 0x00007ffff5961212 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#28 0x00007ffff63edafb in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#29 0x00007ffff5b60f4d in () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007ffff599d66d in QWidget::repaint(QRect const&) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#31 0x00007ffff599d6cc in QWidget::repaint() () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#32 0x00007ffff7edb75a in ZLApplication::refreshWindow() () at /usr/lib/libzlcore.so.0.13
#33 0x0000555555699999 in FBReader::refreshWindow() (this=0x5555558362e0) at FBReader.cpp:204
#34 0x00007ffff7ed6408 in ZLOptionsDialog::run() () at /usr/lib/libzlcore.so.0.13
#35 0x00007ffff7f0a036 in ZLDesktopOptionsDialog::run() () at /usr/lib/libzlcore.so.0.13
#36 0x000055555568fd8e in ShowOptionsDialogAction::run() (this=<optimized out>) at ./fbreader/../zlibrary/core/include/shared_ptr.h:240
#37 0x00007ffff7edc157 in ZLApplication::doAction(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) () at /usr/lib/libzlcore.so.0.13
#38 0x00007ffff6401c90 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#39 0x00007ffff5955012 in QAction::triggered(bool) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#40 0x00007ffff59562a7 in QAction::activate(QAction::ActionEvent) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#41 0x00007ffff5cf2da3 in () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#42 0x00007ffff5cf2ed4 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#43 0x00007ffff5dad86a in QToolButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#44 0x00007ffff59aca28 in QWidget::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#45 0x00007ffff595aa2c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#46 0x00007ffff59613fc in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#47 0x00007ffff63edafb in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
--Type <RET> for more, q to quit, c to continue without paging--
#48 0x00007ffff5960b3b in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#49 0x00007ffff59d3d84 in () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#50 0x00007ffff59d29d0 in QApplication::x11ProcessEvent(_XEvent*) () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#51 0x00007ffff59fa06c in () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#52 0x00007ffff564ef2e in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#53 0x00007ffff564f1c8 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#54 0x00007ffff564f25c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#55 0x00007ffff641a8e1 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#56 0x00007ffff59fa1f7 in () at /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#57 0x00007ffff63ec38f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#58 0x00007ffff63ec65e in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#59 0x00007ffff63f1b2a in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#60 0x00007ffff7fbd527 in ZLQtLibraryImplementation::run(ZLApplication*) () at /usr/lib/zlibrary/ui/zlui-qt4.so
#61 0x000055555558696c in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/include/c++/8/bits/char_traits.h:285
(gdb)
It looks like it hit a problem in a Zip routine of some sort? It seems
like this specific zip file is causing some trouble:
(gdb) up
#1 0x0000555555707015 in BooksDBUtil::resetZipInfo (zipFile=...) at ./fbreader/../zlibrary/core/include/shared_ptr.h:236
236 ./fbreader/../zlibrary/core/include/shared_ptr.h: No such file or directory.
(gdb) p zipFile
$1 = (const ZLFile &) @0x7fffffffaef0: {static ourPlainStreamCache = {<No data fields>},
myPath = "/srv/books/.git/annex/objects/42/k6/SHA256E-s314645--55529471a826d0e5dfeb8ac1b720e0e09ed0adf2b511d70910cb953e57155ccc.zip:SHA256E-s314645--55529471a826d0e5dfeb8ac1b720e0e09ed0adf2b511d70910cb953e57155"..., myNameWithExtension = "SHA256E-s314645--55529471a826d0e5dfeb8ac1b720e0e09ed0adf2b511d70910cb953e57155ccc.zip",
myNameWithoutExtension = "SHA256E-s314645--55529471a826d0e5dfeb8ac1b720e0e09ed0adf2b511d70910cb953e57155ccc", myExtension = "zip", myArchiveType = ZLFile::ZIP, myInfo = {Exists = true,
IsDirectory = false, Size = 4096}, myInfoIsFilled = true}
mupdf can read this file without problem. One interesting thing in
that filename is the colo in the middle: that should be a slash, as
the first .zip path is actually a directory (git-annex oddity).
If I block (read, not execute) access to the git-annex directory, the
problem goes away, so this seems to be specifically a problem with a
directory structure like:
foo.zip/foo.zip
... although I haven't tested that directly to confirm.
-- System Information:
Debian Release: 10.1
APT prefers stable-debug
APT policy: (500, 'stable-debug'), (500, 'stable'), (1, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 4.19.0-6-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_CA.UTF-8, LC_CTYPE=fr_CA.UTF-8 (charmap=UTF-8), LANGUAGE=fr_CA.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages fbreader depends on:
ii libc6 2.28-10
ii libgcc1 1:8.3.0-6
ii libsqlite3-0 3.27.2-3
ii libstdc++6 8.3.0-6
ii libzlcore0.13 0.12.10dfsg2-3
ii libzltext0.13 0.12.10dfsg2-3
ii libzlui-qt4 0.12.10dfsg2-3
Versions of packages fbreader recommends:
ii sensible-utils 0.0.12
fbreader suggests no packages.
-- no debconf information
Information forwarded
to debian-bugs-dist@lists.debian.org, Eugene V. Lyubimkin <jackyf@debian.org>:
Bug#941886; Package fbreader.
(Sat, 09 Nov 2019 12:39:08 GMT) (full text, mbox, link).
Acknowledgement sent
to "Eugene V. Lyubimkin" <jackyf@debian.org>:
Extra info received and forwarded to list. Copy sent to Eugene V. Lyubimkin <jackyf@debian.org>.
(Sat, 09 Nov 2019 12:39:08 GMT) (full text, mbox, link).
Message #10 received at 941886@bugs.debian.org (full text, mbox, reply):
Hello Antoine, Antoine Beaupre kirjoitti 7.10.2019 klo 6.02: > After starting fbreader (which takes 30 seconds), I go to the library > and hit settings. There I configure my ebook library (~/books), click > the "Look for books in subdirectories" button, and hit "OK". > > After a little scanning, it totally crashes with the following backtrace: Thank you for the detailed report. Unfortunately, the upstream development has stopped many years ago, and it's unlikely for problems to become fixed unless somebody steps up. Regards, -- Eugene V. Lyubimkin aka JackYF C++ GNU/Linux userspace developer, Debian Developer
Send a report that this bug log contains spam.
Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.