Bug 490827 - kioworker crashes in ThumbnailProtocol::get() when save dialog is open
Summary: kioworker crashes in ThumbnailProtocol::get() when save dialog is open
Status: RESOLVED FIXED
Alias: None
Product: frameworks-kio
Classification: Frameworks and Libraries
Component: Open/save dialogs (other bugs)
Version First Reported In: git master
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: KIO Bugs
URL:
Keywords:
: 491896 501172 501599 504255 (view as bug list)
Depends on:
Blocks:
 
Reported: 2024-07-25 18:48 UTC by Sven Grewe
Modified: 2025-06-12 14:07 UTC (History)
12 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.16
Sentry Crash Report: https://crash-reports.kde.org/organizations/kde/issues/4222


Attachments
KCrash report (8.51 KB, text/vnd.kde.kcrash-report)
2024-07-25 18:48 UTC, Sven Grewe
Details
second KCrash report (5.65 KB, text/vnd.kde.kcrash-report)
2024-08-24 17:00 UTC, Sven Grewe
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sven Grewe 2024-07-25 18:48:14 UTC
Created attachment 171990 [details]
KCrash report

SUMMARY
kioworker crashed in the background. I saw it crash when using the file picker/saver. I'm not sure if it's related.


SOFTWARE/OS VERSIONS
Operating System: KDE neon 6.0
KDE Plasma Version: 6.1.3
KDE Frameworks Version: 6.4.0
Qt Version: 6.7.0
Kernel Version: 6.5.0-44-generic (64-bit)
Graphics Platform: X11
Comment 1 Nate Graham 2024-07-26 17:01:51 UTC
Thread 1 (Thread 0x7ab7f4f14280 (LWP 176938)):
[KCrash Handler]
#6  __pthread_kill_implementation (no_tid=0, signo=6, threadid=134930507055744) at ./nptl/pthread_kill.c:44
#7  __pthread_kill_internal (signo=6, threadid=134930507055744) at ./nptl/pthread_kill.c:78
#8  __GI___pthread_kill (threadid=134930507055744, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#9  0x00007ab7f8e42476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#10 0x00007ab7f8e287f3 in __GI_abort () at ./stdlib/abort.c:79
#11 0x00007ab7f96fdb6e in qAbort () at ./src/corelib/global/qglobal.cpp:161
#12 0x00007ab7f96f820a in qt_message_fatal<QString&> (message=..., context=...) at ./src/corelib/global/qlogging.cpp:2025
#13 qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, context=..., msg=<optimized out>, ap=ap@entry=0x7ffde408add0) at ./src/corelib/global/qlogging.cpp:374
#14 0x00007ab7f96fe511 in QMessageLogger::fatal (this=<optimized out>, msg=<optimized out>) at ./src/corelib/global/qlogging.cpp:889
#15 0x00007ab7f96c2ac2 in qt_assert (assertion=assertion@entry=0x7ab7f9a4c85c "info.isAbsolute()", file=file@entry=0x7ab7f9a4c72e "./thumbnail/thumbnail.cpp", line=line@entry=170) at ./src/corelib/global/qassert.cpp:68
#16 0x00007ab7f9a406d4 in ThumbnailProtocol::get (this=0x7ffde408b910, url=...) at ./thumbnail/thumbnail.cpp:170
#17 0x00007ab7f9914765 in KIO::WorkerSlaveBaseBridge::get (this=0x621f5f39e160, url=...) at ./src/core/workerbase_p.h:71
#18 0x00007ab7f991052e in KIO::SlaveBase::dispatch (this=0x621f5f39e160, command=67, data=...) at ./src/core/slavebase.cpp:1168
#19 0x00007ab7f99c12ba in KIO::SlaveBase::dispatchLoop() [clone .constprop.0] (this=<optimized out>) at ./src/core/slavebase.cpp:350
#20 0x00007ab7f990eefd in KIO::WorkerBase::dispatchLoop (this=this@entry=0x7ffde408b910) at ./src/core/workerbase.cpp:27
#21 0x00007ab7f9a44a3c in kdemain (argc=<optimized out>, argc@entry=4, argv=0x7ffde408c4b8) at ./thumbnail/thumbnail.cpp:114
#22 0x0000621f5e1d95a0 in main (argc=5, argv=0x7ffde408c638) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qvarlengtharray.h:84
Comment 2 Nate Graham 2024-07-26 17:02:09 UTC
thumbnail.cpp:170 is this:

> Q_ASSERT(info.isAbsolute())
Comment 3 Nicolas Fella 2024-07-31 22:25:58 UTC
> I saw it crash when using the file picker/saver. I'm not sure if it's related.

It's very much related. Can you tell which program you used specifically?
Comment 4 Bug Janitor Service 2024-07-31 23:06:21 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kio/-/merge_requests/1673
Comment 5 Bug Janitor Service 2024-08-02 10:36:42 UTC
A possibly relevant merge request was started @ https://invent.kde.org/network/kio-extras/-/merge_requests/363
Comment 6 Nicolas Fella 2024-08-14 12:33:52 UTC
Git commit 7be69649a6d3ba8786ff6586aa0769fc05d0ac9c by Nicolas Fella.
Committed on 13/08/2024 at 18:21.
Pushed by nicolasfella into branch 'master'.

[thumbnail] Print file name when asserting

This gives us more information to debug the issue

M  +1    -1    thumbnail/thumbnail.cpp

https://invent.kde.org/network/kio-extras/-/commit/7be69649a6d3ba8786ff6586aa0769fc05d0ac9c
Comment 7 Nicolas Fella 2024-08-14 12:34:31 UTC
Git commit 9052690e66052f32c021256439e81168d501a0d7 by Nicolas Fella.
Committed on 14/08/2024 at 12:34.
Pushed by nicolasfella into branch 'release/24.08'.

[thumbnail] Print file name when asserting

This gives us more information to debug the issue
(cherry picked from commit 7be69649a6d3ba8786ff6586aa0769fc05d0ac9c)

M  +1    -1    thumbnail/thumbnail.cpp

https://invent.kde.org/network/kio-extras/-/commit/9052690e66052f32c021256439e81168d501a0d7
Comment 8 Sven Grewe 2024-08-20 09:07:18 UTC
I used the Signal Desktop Messenger (Flatpak) for this and can reproduce a crash on an up-to-date system when trying to save a file from a chat. Opening/selecting files on the system doesn't seem to cause an issue.
Comment 9 Sven Grewe 2024-08-24 17:00:51 UTC
Created attachment 172912 [details]
second KCrash report

It still crashes with the 24.08.0 update
Comment 10 Bug Janitor Service 2024-08-25 06:37:58 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kio/-/merge_requests/1703
Comment 11 Méven Car 2024-08-25 06:48:01 UTC
Two questions:
 - does the crash happen in any folder, only in specific ones (like one starting with smb://)
 - Can share the list of you enabled thumbnailer (in dolphin > preview), as a screenshot for instance
Comment 12 Nicolas Fella 2024-11-07 14:29:45 UTC
Git commit d09989f93698a01aef719bfd19bd665269df091e by Nicolas Fella.
Committed on 07/11/2024 at 14:16.
Pushed by nicolasfella into branch 'master'.

[previewjob] Assert that path is absolute

The worker expects that, so catch failure early

M  +4    -0    src/gui/previewjob.cpp

https://invent.kde.org/frameworks/kio/-/commit/d09989f93698a01aef719bfd19bd665269df091e
Comment 13 Nicolas Fella 2024-12-18 12:55:04 UTC
From https://crash-reports.kde.org/organizations/kde/issues/107873

0   libc.so.6                       0x7f073d29eb1c      [inlined] __pthread_kill_implementation (pthread_kill.c:44)
1   libc.so.6                       0x7f073d29eb1c      [inlined] __pthread_kill_internal (pthread_kill.c:78)
2   libc.so.6                       0x7f073d29eb1c      pthread_kill (pthread_kill.c:89)
3   libc.so.6                       0x7f073d29eb1b      [inlined] __pthread_kill_implementation (pthread_kill.c:43)
4   libc.so.6                       0x7f073d29eb1b      [inlined] __pthread_kill_internal (pthread_kill.c:78)
5   libc.so.6                       0x7f073d29eb1b      [inlined] pthread_kill (pthread_kill.c:89)
6   libc.so.6                       0x7f073d29eb1b      [inlined] __pthread_kill_implementation (pthread_kill.c:43)
7   libc.so.6                       0x7f073d29eb1b      [inlined] __pthread_kill_internal (pthread_kill.c:78)
8   libc.so.6                       0x7f073d29eb1b      pthread_kill (pthread_kill.c:89)
9   libc.so.6                       0x7f073d24526d      __GI_raise (raise.c:26)
10  libc.so.6                       0x7f073d2288fe      abort (abort.c:79)
11  libQt6Core.so.6.8.1             0x7f073df0e0bd      [inlined] qAbort (qassert.cpp:49)
12  libQt6Core.so.6.8.1             0x7f073df0e0bd      [inlined] qt_message_fatal<T> (qlogging.cpp:2116)
13  libQt6Core.so.6.8.1             0x7f073df0e0bd      qt_message (qlogging.cpp:382)
14  libQt6Core.so.6.8.1             0x7f073df0ef9a      QMessageLogger::fatal (qlogging.cpp:884)
15  libQt6Core.so.6.8.1             0x7f073df0f06c      qt_assert_x (qassert.cpp:114)
16  libKF6KIOGui.so.6.9.0           0x7f07405564cb      KIO::PreviewJobPrivate::createThumbnail (previewjob.cpp:835)
17  libKF6KIOGui.so.6.9.0           0x7f074057541a      KIO::PreviewJobPrivate::getOrCreateThumbnail (previewjob.cpp:710)
18  libKF6KIOGui.so.6.9.0           0x7f0740576017      KIO::PreviewJob::slotResult (previewjob.cpp:592)
19  libQt6Core.so.6.8.1             0x7f073de7ada8      [inlined] ? (qobjectdefs_impl.h:486)
20  libQt6Core.so.6.8.1             0x7f073de7ada8      doActivate<T> (qobject.cpp:4124)
21  libKF6CoreAddons.so.6.9.0       0x7f073f2d0475      KJob::result (moc_kjob.cpp:622)
22  libKF6CoreAddons.so.6.9.0       0x7f073f2d2b6a      KJob::finishJob (kjob.cpp:115)
23  libQt6Core.so.6.8.1             0x7f073de7ada8      [inlined] ? (qobjectdefs_impl.h:486)
24  libQt6Core.so.6.8.1             0x7f073de7ada8      doActivate<T> (qobject.cpp:4124)
25  libKF6KIOCore.so.6.9.0          0x7f073f575534      [inlined] KIO::WorkerInterface::finished (moc_workerinterface_p.cpp:515)
26  libKF6KIOCore.so.6.9.0          0x7f073f575534      KIO::WorkerInterface::dispatch (workerinterface.cpp:127)
27  libKF6KIOCore.so.6.9.0          0x7f073f573cb6      KIO::WorkerInterface::dispatch (workerinterface.cpp:58)
28  libKF6KIOCore.so.6.9.0          0x7f073f57086d      KIO::Worker::gotInput (worker.cpp:260)
29  libQt6Core.so.6.8.1             0x7f073de7ada8      [inlined] ? (qobjectdefs_impl.h:486)
30  libQt6Core.so.6.8.1             0x7f073de7ada8      doActivate<T> (qobject.cpp:4124)
31  libQt6Core.so.6.8.1             0x7f073de108fc      QObject::event (qobject.cpp:1419)
32  libQt6Widgets.so.6.8.1          0x7f073effff47      QApplicationPrivate::notify_helper (qapplication.cpp:3296)
33  libQt6Core.so.6.8.1             0x7f073deb5717      QCoreApplication::notifyInternal2 (qcoreapplication.cpp:1168)
34  libQt6Core.so.6.8.1             0x7f073deb8241      QCoreApplicationPrivate::sendPostedEvents (qcoreapplication.cpp:1968)
35  libQt6Core.so.6.8.1             0x7f073dc725ce      postEventSourceDispatch (qeventdispatcher_glib.cpp:246)
36  libglib-2.0.so.0.8000.0         0x7f073b4155b5      <unknown>
37  libglib-2.0.so.0.8000.0         0x7f073b474717      <unknown>
38  libglib-2.0.so.0.8000.0         0x7f073b414a53      g_main_context_iteration
39  libQt6Core.so.6.8.1             0x7f073dc702ce      QEventDispatcherGlib::processEvents (qeventdispatcher_glib.cpp:399)
40  libQt6Core.so.6.8.1             0x7f073dec1aea      QEventLoop::exec (qeventloop.cpp:194)
41  libQt6Widgets.so.6.8.1          0x7f073ee1793a      QDialog::exec (qdialog.cpp:567)
42  xdg-desktop-portal-kde          0x643107951846      FileChooserPortal::OpenFile (filechooser.cpp:488)
43  xdg-desktop-portal-kde          0x6431078ac368      FileChooserPortal::qt_static_metacall (moc_filechooser.cpp:188)
44  xdg-desktop-portal-kde          0x6431078ae979      FileChooserPortal::qt_metacall (moc_filechooser.cpp:235)
45  libQt6DBus.so.6.8.1             0x7f073e99a49b      QDBusConnectionPrivate::deliverCall (qdbusintegrator.cpp:1008)
46  libQt6DBus.so.6.8.1             0x7f073e99b202      QDBusConnectionPrivate::activateCall (qdbusintegrator.cpp:910)
47  libQt6DBus.so.6.8.1             0x7f073e99dd6a      QDBusConnectionPrivate::activateObject (qdbusintegrator.cpp:1485)
48  libQt6DBus.so.6.8.1             0x7f073e99e6e9      QDBusActivateObjectEvent::placeMetaCall (qdbusintegrator.cpp:1605)
49  libQt6Core.so.6.8.1             0x7f073de108fc      QObject::event (qobject.cpp:1419)
50  libQt6Widgets.so.6.8.1          0x7f073effff47      QApplicationPrivate::notify_helper (qapplication.cpp:3296)
51  libQt6Core.so.6.8.1             0x7f073deb5717      QCoreApplication::notifyInternal2 (qcoreapplication.cpp:1168)
52  libQt6Core.so.6.8.1             0x7f073deb8241      QCoreApplicationPrivate::sendPostedEvents (qcoreapplication.cpp:1968)
53  libQt6Core.so.6.8.1             0x7f073dc725ce      postEventSourceDispatch (qeventdispatcher_glib.cpp:246)
54  libglib-2.0.so.0.8000.0         0x7f073b4155b5      <unknown>
55  libglib-2.0.so.0.8000.0         0x7f073b474717      <unknown>
56  libglib-2.0.so.0.8000.0         0x7f073b414a53      g_main_context_iteration
57  libQt6Core.so.6.8.1             0x7f073dc702ce      QEventDispatcherGlib::processEvents (qeventdispatcher_glib.cpp:399)
58  libQt6Core.so.6.8.1             0x7f073dec1aea      QEventLoop::exec (qeventloop.cpp:194)
59  libQt6Core.so.6.8.1             0x7f073deb8c2c      QCoreApplication::exec (qcoreapplication.cpp:1513)
60  xdg-desktop-portal-kde          0x6431078aa322      main (xdg-desktop-portal-kde.cpp:50)
61  libc.so.6                       0x7f073d22a1c9      __libc_start_call_main (libc_start_call_main.h:58)
62  libc.so.6                       0x7f073d22a28a      __libc_start_main_alias_1 (libc-start.c:360)
63  xdg-desktop-portal-kde          0x6431078aa684      _start


Somehow item.localPath() is "."
Comment 14 Nicolas Fella 2024-12-20 16:09:05 UTC
*** Bug 491896 has been marked as a duplicate of this bug. ***
Comment 15 Bug Janitor Service 2024-12-20 16:17:59 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kio/-/merge_requests/1770
Comment 16 Bug Janitor Service 2024-12-22 20:48:27 UTC
A possibly relevant merge request was started @ https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/764
Comment 17 Nicolas Fella 2024-12-23 00:50:09 UTC
Git commit b2e67aacb4d1d958b710d903d7c2f0987f8c32ff by Nicolas Fella.
Committed on 23/12/2024 at 00:46.
Pushed by nicolasfella into branch 'master'.

[kio] Handle error when getting mount point

The DBus reply is implicitly converted to QString, so when the call fails we get the call error message as string

We then write that into UDS_LOCAL_PATH, which causes issues later on

SENTRY: DOLPHIN-5CT

M  +7    -1    kio/kiokdeconnect.cpp

https://invent.kde.org/network/kdeconnect-kde/-/commit/b2e67aacb4d1d958b710d903d7c2f0987f8c32ff
Comment 18 Nicolas Fella 2024-12-23 00:53:06 UTC
Git commit be86637a4f71693b29288e93f7f3bedde95ac4a7 by Nicolas Fella.
Committed on 23/12/2024 at 00:52.
Pushed by nicolasfella into branch 'release/24.12'.

[kio] Handle error when getting mount point

The DBus reply is implicitly converted to QString, so when the call fails we get the call error message as string

We then write that into UDS_LOCAL_PATH, which causes issues later on

SENTRY: DOLPHIN-5CT
(cherry picked from commit b2e67aacb4d1d958b710d903d7c2f0987f8c32ff)

M  +7    -1    kio/kiokdeconnect.cpp

https://invent.kde.org/network/kdeconnect-kde/-/commit/be86637a4f71693b29288e93f7f3bedde95ac4a7
Comment 19 Nicolas Fella 2024-12-25 14:50:29 UTC
> Somehow item.localPath() is "."

d'oh, my assert was slightly wrong, it's printing the file's folder path, excluding the file name.

The actual full path is something like "./someFile"

It can be reproduced by entering "file:." into the file dialog's address bar
Comment 20 Bug Janitor Service 2024-12-25 15:45:56 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kio/-/merge_requests/1772
Comment 21 Bug Janitor Service 2024-12-25 15:48:36 UTC
A possibly relevant merge request was started @ https://invent.kde.org/network/kio-extras/-/merge_requests/394
Comment 22 Nicolas Fella 2025-01-10 18:17:23 UTC
Git commit 07c68404decf95ad0897685a1c5071bfbf0254b5 by Nicolas Fella.
Committed on 10/01/2025 at 18:04.
Pushed by nicolasfella into branch 'master'.

[thumbnail] Fix assert message

Print the full file path, not just the folder path

M  +1    -1    thumbnail/thumbnail.cpp

https://invent.kde.org/network/kio-extras/-/commit/07c68404decf95ad0897685a1c5071bfbf0254b5
Comment 23 Nicolas Fella 2025-01-10 18:57:16 UTC
Git commit 0ba7ab4e6941785d63ffd8d6c68a5853763454f5 by Nicolas Fella.
Committed on 10/01/2025 at 18:57.
Pushed by nicolasfella into branch 'release/24.12'.

[thumbnail] Fix assert message

Print the full file path, not just the folder path
(cherry picked from commit 07c68404decf95ad0897685a1c5071bfbf0254b5)

M  +1    -1    thumbnail/thumbnail.cpp

https://invent.kde.org/network/kio-extras/-/commit/0ba7ab4e6941785d63ffd8d6c68a5853763454f5
Comment 24 Harald Sitter 2025-03-07 08:30:03 UTC
failing assertion for signal-desktop snap apparently https://crash-reports.kde.org/organizations/kde/issues/112252/events/e599410f6ce348559db6ef8b1eaa8ecf/?project=36

(can't test as snap is being a bit broken for me ^^)
Comment 25 Nate Graham 2025-03-07 16:50:42 UTC
*** Bug 501172 has been marked as a duplicate of this bug. ***
Comment 26 Laura David Hurka 2025-03-07 21:18:18 UTC
For me this crash behavior started after 2025-01-29, judging from my list of downloaded files.
Saving files from signal-desktop (installed from snap) worked fine until then.
Comment 27 Ash 2025-03-11 05:09:14 UTC
I'm seeing this bug in Signal too, I'm using the Signal-desktop Flatpak.

As Laura said, I think this started happening around the end of January. Downloading files worked fine before that.

I am seeing this error in journalctl:
---
xdg-desktop-portal-kde: ASSERT failure in PreviewJobPrivate::getOrCreateThumbnail: "Local path for url file:./.cache is not absolute: ./.cache", file ./src/gui/previewjob.cpp, line 716
---
I'm on KDE Neon, relevant installed packages:
kf6-kio: 6.11.0+p24.04+vstable+git20250303.0733-0
xdg-desktop-portal-kde: 6.3.2+p24.04+vstable+git20250225.1925-0
Comment 28 Harald Sitter 2025-03-17 12:27:59 UTC
*** Bug 501599 has been marked as a duplicate of this bug. ***
Comment 29 TraceyC 2025-03-24 20:48:13 UTC
The sentry issue has 34 events.
Changing back to confirmed since the prior work was merged
Comment 30 David Redondo 2025-06-10 09:28:41 UTC
*** Bug 504255 has been marked as a duplicate of this bug. ***
Comment 31 Akseli Lahtinen 2025-06-10 09:50:30 UTC
Okay I can reproduce this with ASHPD application which is used to test portals https://flathub.org/apps/com.belmoussaoui.ashpd.demo

1. Open ASHPD
2. Select File Chooser
3. Go to save file section
4. Type ".cache" to current folder
5. Press request
6. File dialog opens in ~/.cache
7. And then crashes immediately due to the previewjob not getting an absolute path

I think the solution is to make sure whatever passes the ".cache" to the file dialog etc to turn it into absolute URL before starting the file dialog.

Operating System: Fedora Linux 42
KDE Plasma Version: 6.4.80
KDE Frameworks Version: 6.16.0
Qt Version: 6.9.0
Kernel Version: 6.15.0-61.fc43.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 3600 6-Core Processor
Memory: 16 GiB of RAM (15.5 GiB usable)
Graphics Processor: AMD Radeon RX 6600
Comment 32 Akseli Lahtinen 2025-06-10 09:53:28 UTC
To clarify it doesnt need to be ".cache", it can also be "Pictures" to cause the crash. But if its "~/Pictures" it works.
Comment 33 David Redondo 2025-06-10 11:38:52 UTC
Thanks, we can easily work around not absolute paths in the portal as those dont make sense cross process. KFileWidget docs also say no relative paths but doesnt check it and runs into the assert sometimes

#include <KFileWidget>
#include <QApplication>
#include <QUrl>
#include <unistd.h>

int main(int argc, char**argv){
    chdir(getenv("HOME"));
    QApplication app(argc, argv);
    KFileWidget f(QUrl("file:.cache")); // does not explode, ignores URL
    // KFileWidget f(QUrl("file:./.cache")); // explodes
    f.setUrl(QUrl("file:.cache")); // explodes
    f.show();
    app.exec();
}
Comment 34 David Redondo 2025-06-10 11:40:26 UTC
Actually it does not say say so

 /*!
     * Sets the directory to view.
     *
     * \a url URL to show.
     *
     * \a clearforward Indicates whether the forward queue
     * should be cleared.
     */
    void setUrl(const QUrl &url, bool clearforward = true);


    /*!
     * Sets the URL to preselect to \a url
     *
     * This method handles absolute URLs (remember to use fromLocalFile for local paths).
     * It also handles relative URLs, which you should construct like this:
     * QUrl relativeUrl; relativeUrl.setPath(fileName);
     *
     * \since 5.33
     */
    void setSelectedUrl(const QUrl &url);
Comment 35 David Redondo 2025-06-10 11:42:47 UTC
We can make the same happen via QFileDialog -> plasma-integtration-> KFileWidget

#include <QApplication>
#include <QUrl>
#include <unistd.h>
#include <QFileDialog>

int main(int argc, char**argv){
    chdir(getenv("HOME"));
    QApplication app(argc, argv);
    QFileDialog f;
    f.setDirectoryUrl(QUrl("file:.cache"));
    f.show();
    app.exec();
}
Comment 36 Bug Janitor Service 2025-06-10 12:03:42 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/merge_requests/401
Comment 37 David Redondo 2025-06-10 13:02:08 UTC
Git commit 7c8e601a663eb33029e2723bbd2372c89e0cb9be by David Redondo.
Committed on 10/06/2025 at 12:01.
Pushed by davidre into branch 'master'.

filechooser: Ignore non absolute current_folder urls

These do not make sense in cross process communication
SENTRY:XDG-DESKTOP-PORTAL-KDE-G4

M  +8    -0    src/filechooser.cpp

https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/commit/7c8e601a663eb33029e2723bbd2372c89e0cb9be
Comment 38 Bug Janitor Service 2025-06-10 13:17:22 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/merge_requests/402
Comment 39 David Redondo 2025-06-10 13:43:21 UTC
Git commit 609752566234575f68c38cd24fbccb4c6e8b133f by David Redondo.
Committed on 10/06/2025 at 13:07.
Pushed by davidre into branch 'Plasma/6.4'.

filechooser: Ignore non absolute current_folder urls

These do not make sense in cross process communication
SENTRY:XDG-DESKTOP-PORTAL-KDE-G4


(cherry picked from commit 7c8e601a663eb33029e2723bbd2372c89e0cb9be)

Co-authored-by: David Redondo <kde@david-redondo.de>

M  +8    -0    src/filechooser.cpp

https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/commit/609752566234575f68c38cd24fbccb4c6e8b133f
Comment 40 Bug Janitor Service 2025-06-10 14:53:37 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kio/-/merge_requests/1910
Comment 41 David Redondo 2025-06-11 08:06:34 UTC
Git commit 6552bc6f280b2eddff4b1da931004a8a9230ac81 by David Redondo.
Committed on 11/06/2025 at 07:53.
Pushed by davidre into branch 'master'.

kfilewidget: Resolve relative file urls against current working dir

We need to work with absolute urls for previewjob which asserts
on relative urls.

M  +11   -6    src/filewidgets/kfilewidget.cpp

https://invent.kde.org/frameworks/kio/-/commit/6552bc6f280b2eddff4b1da931004a8a9230ac81