[ark] [Bug 426051] ark crashes when opening an encrypted 7z

2020-11-03 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=426051

Tom Moebert  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #8 from Tom Moebert  ---
Fixed

-- 
You are receiving this mail because:
You are watching all bug changes.

[ark] [Bug 426051] ark crashes when opening an encrypted 7z

2020-09-05 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=426051

Tom Moebert  changed:

   What|Removed |Added

 Status|CONFIRMED   |ASSIGNED
   Assignee|elvis.angelac...@kde.org|tom.m...@googlemail.com

--- Comment #4 from Tom Moebert  ---
Ok. Since the connection slot is a lambda, I would probably store the
QMetaObject::Connection object as member, so I can disconnect it directly.

-- 
You are receiving this mail because:
You are watching all bug changes.

[ark] [Bug 426051] ark crashes when opening an encrypted 7z

2020-09-05 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=426051

Tom Moebert  changed:

   What|Removed |Added

 Ever confirmed|0   |1
 Status|REPORTED|CONFIRMED

--- Comment #2 from Tom Moebert  ---
No I can't, sry. The archives in question contain data that I'm not willing to
share publicly, even though encrypted.

Instead, I analyzed the problem myself: Ark calls the 7z executable asking it
to uncrypt the archive. This doesn't work, because wrong password. Now, the 7z
exec is spamming the stdout with msgs "ERROR: Data Error in encrypted file.
Wrong password?"

Ark says: "Oh, we've got new input on stdout? Let's handle it!" In
CliInterface::readStdout() we find the wrong password message and kill the
process in CliInterface::killProcess(). There we do m_process->waitForFinished,
which goes back into Qt's event loop. Any more work to do? Yes! Another "ERROR:
Data Error in encrypted file. Wrong password?" Great, let's handle it! We find
the wrong password message, kill the process, wait again, and search for
events. What comes next? Oh, another message on stdout. Let's handle it!

So, if you want to kill the process, I'd suggest to disconnect() the
QProcess::readyReadStandardOutput signal in CliInterface::killProcess().

-- 
You are receiving this mail because:
You are watching all bug changes.

[ark] [Bug 426051] New: ark crashes when opening an encrypted 7z

2020-09-01 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=426051

Bug ID: 426051
   Summary: ark crashes when opening an encrypted 7z
   Product: ark
   Version: 20.04.2
  Platform: openSUSE RPMs
OS: Linux
Status: REPORTED
  Keywords: drkonqi
  Severity: crash
  Priority: NOR
 Component: general
  Assignee: elvis.angelac...@kde.org
  Reporter: tom.m...@googlemail.com
CC: rthoms...@gmail.com
  Target Milestone: ---

Application: ark (20.04.2)

Qt Version: 5.12.7
Frameworks Version: 5.71.0
Operating System: Linux 5.3.18-lp152.36-default x86_64
Windowing system: X11
Distribution: openSUSE Leap 15.2

-- Information about the crash:
- What I was doing when the application crashed:

1. Get an AES encrypted 7z container from somewhere
2. Open any encrypted file within the container
3. Enter the wrong password
4. Confirm the dialog that you've entered the wrong password
5. The UI thread ends up in an endless recursion until it crashes

The crash can be reproduced every time.

-- Backtrace:
Application: Ark (ark), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f1dfea03900 (LWP 8869))]

Thread 4 (Thread 0x7f1dd008e700 (LWP 8918)):
#0  0x7f1dfa9d46db in poll () from /lib64/libc.so.6
#1  0x7f1dd4cc3f71 in ?? () from /usr/lib64/libpulse.so.0
#2  0x7f1dd4cb5b10 in pa_mainloop_poll () from /usr/lib64/libpulse.so.0
#3  0x7f1dd4cb61a0 in pa_mainloop_iterate () from /usr/lib64/libpulse.so.0
#4  0x7f1dd4cb6230 in pa_mainloop_run () from /usr/lib64/libpulse.so.0
#5  0x7f1dd4cc3eb9 in ?? () from /usr/lib64/libpulse.so.0
#6  0x7f1dd4a63018 in ?? () from
/usr/lib64/pulseaudio/libpulsecommon-13.0.so
#7  0x7f1df6d0d4f9 in start_thread () from /lib64/libpthread.so.0
#8  0x7f1dfa9defbf in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f1de05a1700 (LWP 8874)):
#0  0x7f1dfa9d01d8 in read () from /lib64/libc.so.6
#1  0x7f1df4c789a0 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x7f1df4c31298 in g_main_context_check () from
/usr/lib64/libglib-2.0.so.0
#3  0x7f1df4c31720 in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x7f1df4c3188c in g_main_context_iteration () from
/usr/lib64/libglib-2.0.so.0
#5  0x7f1dfb36a19b in QEventDispatcherGlib::processEvents
(this=0x7f1dd8000b10, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x7f1dfb30b32a in QEventLoop::exec (this=this@entry=0x7f1de05a0c80,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#7  0x7f1dfb13110a in QThread::exec (this=) at
thread/qthread.cpp:531
#8  0x7f1df8bf3cd5 in ?? () from /usr/lib64/libQt5DBus.so.5
#9  0x7f1dfb1328b2 in QThreadPrivate::start (arg=0x7f1df8e6bd80) at
thread/qthread_unix.cpp:361
#10 0x7f1df6d0d4f9 in start_thread () from /lib64/libpthread.so.0
#11 0x7f1dfa9defbf in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f1debba0700 (LWP 8873)):
#0  0x7f1dfa9d46db in poll () from /lib64/libc.so.6
#1  0x7f1df3200307 in ?? () from /usr/lib64/libxcb.so.1
#2  0x7f1df3201f3a in xcb_wait_for_event () from /usr/lib64/libxcb.so.1
#3  0x7f1dee995300 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#4  0x7f1dfb1328b2 in QThreadPrivate::start (arg=0x560877e7b800) at
thread/qthread_unix.cpp:361
#5  0x7f1df6d0d4f9 in start_thread () from /lib64/libpthread.so.0
#6  0x7f1dfa9defbf in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f1dfea03900 (LWP 8869)):
[KCrash Handler]
#4  0x7f1dfb2930e1 in QIODevicePrivate::QRingBufferRef::isEmpty
(this=0x5608785aeb78) at
../../include/QtCore/5.12.7/QtCore/private/../../../../../src/corelib/io/qiodevice_p.h:105
#5  (anonymous namespace)::QProcessPoller::QProcessPoller (proc=...,
this=0x7ffcc9c1c0a0) at io/qprocess_unix.cpp:174
#6  QProcessPrivate::waitForFinished (this=this@entry=0x5608785aeae0,
msecs=msecs@entry=5) at io/qprocess_unix.cpp:837
#7  0x7f1dfb288f0b in QProcess::waitForFinished (this=,
msecs=5) at io/qprocess.cpp:1920
#8  0x7f1dfe5ffe67 in Kerfuffle::CliInterface::killProcess(bool) () from
/usr/lib64/libkerfuffle.so.20
#9  0x7f1dfe604e42 in Kerfuffle::CliInterface::readStdout(bool) () from
/usr/lib64/libkerfuffle.so.20
#10 0x7f1dfb33cd0f in QtPrivate::QSlotObjectBase::call (a=0x7ffcc9c1c300,
r=0x5608785710d0, this=0x56087855ada0) at
../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#11 QMetaObject::activate (sender=sender@entry=0x560878500830,
signalOffset=, local_signal_index=local_signal_index@entry=6,
argv=argv@entry=0x7ffcc9c1c300) at kernel/qobject.cpp:3784
#12 0x7f1dfb33d307 in QMetaObject::activate
(sender=sender@entry=0x560878500830, m=m@entry=0x7f1dfb7b9cc0
, local_signal_index=local_signal_index@entry=6,
argv=argv@entry=0x7ffcc9c1c300) at kernel/qobject.cpp:3657
#13 0x7f1dfb28780a in QProcess::readyReadStandardOutput
(this=this@entry=0x560878500830, _t1=...) at 

[gwenview] [Bug 412738] Issue with multi-head + fractional scaling

2019-10-09 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=412738

--- Comment #17 from Tom Moebert  ---
Sry, I'm only occasionally coming here and currently don't really have time to
look at the bugs into detail.

I thought Nate receives and tracks all the gwenview bugs.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 412738] Issue with multi-head + fractional scaling

2019-10-09 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=412738

--- Comment #14 from Tom Moebert  ---
Yes:

(gdb) print thumbnailPix.isNull()
$9 = true

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 412738] Issue with multi-head + fractional scaling

2019-10-09 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=412738

--- Comment #12 from Tom Moebert  ---
Thread 1 "gwenview" hit Breakpoint 1,
Gwenview::ThumbnailBarItemDelegate::sizeHint (this=0x9b3090, index=...)
at /home/tom/Programme/gwenview/lib/thumbnailview/thumbnailbarview.cpp:180
180 auto prf= thumbnailPix.devicePixelRatioF();
(gdb) s
QPaintDevice::devicePixelRatioF (this=0x7fffcd00) at
/usr/include/qt5/QtGui/qpaintdevice.h:87
87  qreal devicePixelRatioF()  const { return
metric(PdmDevicePixelRatioScaled) / devicePixelRatioFScale(); }
(gdb) s
QPixmap::metric (this=0x7fffcd00,
metric=QPaintDevice::PdmDevicePixelRatioScaled) at image/qpixmap.cpp:1476
1476return data ? data->metric(metric) : 0;
(gdb) print data
$7 = {d = 0x0}
(gdb) print devicePixelRatioFScale()
$5 = 65536


It seems that "data" of type QExplicitlySharedDataPointer is
not set to an instance.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 412738] Issue with multi-head + fractional scaling

2019-10-09 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=412738

--- Comment #7 from Tom Moebert  ---
For me crashes in

#4  0x77591475 in operator/ (s=..., c=0) at
/usr/include/qt5/QtCore/qsize.h:196
194 inline const QSize operator/(const QSize , qreal c)
195 {
196 Q_ASSERT(!qFuzzyIsNull(c));
197 return QSize(qRound(s.wd/c), qRound(s.ht/c));
198 }

when c==0 .

Test code:

auto prf= thumbnailPix.devicePixelRatioF();
auto pr = thumbnailPix.devicePixelRatio();

(gdb) print prf
$3 = 0
(gdb) print pr
$2 = 1

(gdb) ptype prf
type = double
(gdb) ptype pr
type = double


Full call stack:

Thread 1 "gwenview" received signal SIGABRT, Aborted.
0x7fffee76b160 in raise () from /lib64/libc.so.6
(gdb) bt
#0  0x7fffee76b160 in raise () from /lib64/libc.so.6
#1  0x7fffee76c741 in abort () from /lib64/libc.so.6
#2  0x7fffef46b907 in QMessageLogger::fatal(char const*, ...) const () from
/usr/lib64/libQt5Core.so.5
#3  0x7fffef466dd6 in qt_assert(char const*, char const*, int) () from
/usr/lib64/libQt5Core.so.5
#4  0x77591475 in operator/ (s=..., c=0) at
/usr/include/qt5/QtCore/qsize.h:196
#5  0x7761dcce in Gwenview::ThumbnailBarItemDelegate::sizeHint
(this=0x9b4650, index=...)
at /home/tom/Programme/gwenview/lib/thumbnailview/thumbnailbarview.cpp:182
#6  0x71540e5a in ?? () from /usr/lib64/libQt5Widgets.so.5
#7  0x715491f4 in ?? () from /usr/lib64/libQt5Widgets.so.5
#8  0x71540bf3 in ?? () from /usr/lib64/libQt5Widgets.so.5
#9  0x7154ac5a in QListView::doItemsLayout() () from
/usr/lib64/libQt5Widgets.so.5
#10 0x712b9513 in ?? () from /usr/lib64/libQt5Widgets.so.5
#11 0x71545160 in QListView::rectForIndex(QModelIndex const&) const ()
from /usr/lib64/libQt5Widgets.so.5
#12 0x715451ae in QListView::visualRect(QModelIndex const&) const ()
from /usr/lib64/libQt5Widgets.so.5
#13 0x7154686c in QListView::scrollTo(QModelIndex const&,
QAbstractItemView::ScrollHint) ()
   from /usr/lib64/libQt5Widgets.so.5
#14 0x77623b67 in Gwenview::ThumbnailView::scrollToSelectedIndex
(this=0xa6f0e0)
at /home/tom/Programme/gwenview/lib/thumbnailview/thumbnailview.cpp:843
#15 0x0047545e in Gwenview::MainWindow::slotDirListerCompleted
(this=0x7f5670)
at /home/tom/Programme/gwenview/app/mainwindow.cpp:1302
#16 0x004a61b0 in Gwenview::MainWindow::qt_static_metacall
(_o=0x7f5670, 
_c=QMetaObject::InvokeMetaMethod, _id=15, _a=0x7fffd2a0)
at
/home/tom/Programme/gwenview/build/app/gwenview_autogen/EWIEGA46WW/moc_mainwindow.cpp:238
#17 0x7fffef68e535 in QMetaObject::activate(QObject*, int, int, void**) ()
from /usr/lib64/libQt5Core.so.5
#18 0x76583947 in ?? () from /usr/lib64/libKF5KIOCore.so.5
#19 0x76583b36 in ?? () from /usr/lib64/libKF5KIOCore.so.5
#20 0x7fffef68f0a2 in QObject::event(QEvent*) () from
/usr/lib64/libQt5Core.so.5
#21 0x712c03dc in QApplicationPrivate::notify_helper(QObject*, QEvent*)
()
   from /usr/lib64/libQt5Widgets.so.5
#22 0x712c7ca4 in QApplication::notify(QObject*, QEvent*) () from
/usr/lib64/libQt5Widgets.so.5
#23 0x7fffef65f8d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() from /usr/lib64/libQt5Core.so.5
#24 0x7fffef66204d in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) ()
   from /usr/lib64/libQt5Core.so.5
#25 0x7fffef6b9323 in ?? () from /usr/lib64/libQt5Core.so.5
#26 0x7fffe9152e87 in g_main_context_dispatch () from
/usr/lib64/libglib-2.0.so.0
#27 0x7fffe9153230 in ?? () from /usr/lib64/libglib-2.0.so.0
#28 0x7fffe91532bc in g_main_context_iteration () from
/usr/lib64/libglib-2.0.so.0
#29 0x7fffef6b894f in
QEventDispatcherGlib::processEvents(QFlags) ()
   from /usr/lib64/libQt5Core.so.5
#30 0x7fffef65d90a in
QEventLoop::exec(QFlags) ()
   from /usr/lib64/libQt5Core.so.5
#31 0x7fffef6669b4 in QCoreApplication::exec() () from
/usr/lib64/libQt5Core.so.5
#32 0x00472361 in main (argc=1, argv=0x7fffdbb8) at
/home/tom/Programme/gwenview/app/main.cpp:163

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 369255] Gwenview is slow on huge dirs

2019-05-23 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=369255

Tom Moebert  changed:

   What|Removed |Added

 CC||tom.m...@googlemail.com

--- Comment #5 from Tom Moebert  ---
I had a quick look at this and I understand it as follows:

After a call to ContextManager::setCurrentDirUrl() (i.e. opening a directory in
the thumbnail view), KDirLister::openUrl() is called. This one will add all
files in that directory one-by-one to the Gwenview::SortedDirModel. One-by-one
a row is inserted into this model. Every insert emits the rowsInserted signal.
Every such signal will call ThumbnailView::rowsInserted(). In there, another
rowsInsertedSignal will be emitted which goes to
PreviewItemDelegate::slotRowsChanged() to update some hover selection or so.
And we do that as many times as there are files in the directory - 82783 times
- in the UI thread... and once we are done with that, the thumbnail generation
can finally start.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 337029] Thumbnails folder preview images do not follow Thumbnail Managing Standard

2019-05-23 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=337029

Tom Moebert  changed:

   What|Removed |Added

 Status|REPORTED|RESOLVED
 CC||tom.m...@googlemail.com
 Resolution|--- |FIXED

--- Comment #3 from Tom Moebert  ---
Fixed in 574ff87ed9f1e761cd958045a57f937c0c2becac years ago.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 356739] Gwenview ignores EXIF rotation on jpg files without file extension

2019-05-22 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=356739

Tom Moebert  changed:

   What|Removed |Added

 CC||tom.m...@googlemail.com
 Status|REPORTED|RESOLVED
 Resolution|--- |WORKSFORME

--- Comment #1 from Tom Moebert  ---
Closing this as it's not reproducible anymore with gwenview from recent git.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 347574] Sony DSC-RX100 ARW raw files are not displayed in full resolution

2019-05-22 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=347574

--- Comment #7 from Tom Moebert  ---
Ok, suggesting to close this as 'not a bug'.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 347574] Sony DSC-RX100 ARW raw files are not displayed in full resolution

2019-05-18 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=347574

Tom Moebert  changed:

   What|Removed |Added

 CC||tom.m...@googlemail.com

--- Comment #4 from Tom Moebert  ---
In case of RAW files, gwenview only looks for an embedded JPEG preview that can
be displayed. I'm pretty sure that the 1616x1080 preview image you see is the
largest one available in that ARW file. AFAIK, darktable and krita never use
the embedded JPEG preview, they always decode the whole RAW file. I don't think
this is a bug in gwenview or libkdcraw.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 331435] Extreme hard drive activity while browsing folders with pictures

2019-05-17 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=331435

Tom Moebert  changed:

   What|Removed |Added

 CC||tom.m...@googlemail.com

--- Comment #5 from Tom Moebert  ---
FYI: A patch is now available: https://phabricator.kde.org/D21260

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 346510] Nikon D810 metadata not all available

2019-05-12 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=346510

--- Comment #6 from Tom Moebert  ---
No I can't. As already explained, neither https://http://phabricator.kde.org,
nor https://phabricator.kde.org, nor http://phabricator.kde.org works for me.
Timeout during TLS handshake as it seems.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 346510] Nikon D810 metadata not all available

2019-05-12 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=346510

Tom Moebert  changed:

   What|Removed |Added

 Status|CONFIRMED   |ASSIGNED
 CC||tom.m...@googlemail.com
   Assignee|gwenview-bugs-n...@kde.org  |tom.m...@googlemail.com

--- Comment #4 from Tom Moebert  ---
Created attachment 120013
  --> https://bugs.kde.org/attachment.cgi?id=120013=edit
Fix incomplete EXIF data for RAW files

Attached is a trivial patch that should resolve the issue. Tested with Canon
(.cr2), Nikon (.nef) and Sony (.arw). Cannot post it to Phabricator as it seems
to be currently down. As being a new contributor, I can't use the Review Board
either.

-- 
You are receiving this mail because:
You are watching all bug changes.

[gwenview] [Bug 375952] Gwenview crashes when opening PNG image in folder containing APNG images.

2019-05-12 Thread Tom Moebert
https://bugs.kde.org/show_bug.cgi?id=375952

Tom Moebert  changed:

   What|Removed |Added

 CC||tom.m...@googlemail.com

--- Comment #10 from Tom Moebert  ---
Cannot reproduce this either. Neither with Wikipedia's bouncing ball nor with
my own (a)png files.

Used exiv2 0.27.0 and gwenview 19.07.70 (recent git).

-- 
You are receiving this mail because:
You are watching all bug changes.