bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#38926: pcmanfm-qt unable to open files by double click


From: Danny Milosavljevic
Subject: bug#38926: pcmanfm-qt unable to open files by double click
Date: Sun, 5 Jan 2020 23:57:46 +0100

In this case I've tried it myself.  I've invoked 

  gdb $(which pcmanfm-qt)

then 

  r

then I double-clicked an entry and waited until the error dialog window
appeared.

then I DIDN'T CLICK IT AWAY.

then I pressed Ctrl-C in gdb

then

  bt

and so I found:

[...]
#6  0x00007ffff7ea1642 in Fm::FileLauncher::showError(_GAppLaunchContext*, 
Fm::GErrorPtr const&, Fm::FilePath const&, std::shared_ptr<Fm::FileInfo const> 
const&) () from 
/gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6
#7  0x00007ffff7e88939 in Fm::BasicFileLauncher::launchWithApp(_GAppInfo*, 
std::vector<Fm::FilePath, std::allocator<Fm::FilePath> > const&, 
_GAppLaunchContext*) () from 
/gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6
#8  0x00007ffff7e8ae4d in Fm::BasicFileLauncher::launchFiles(Fm::FileInfoList 
const&, _GAppLaunchContext*) () from 
/gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6
#9  0x00007ffff7ea11b7 in Fm::FileLauncher::launchFiles(QWidget*, 
Fm::FileInfoList const&) () from 
/gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6
#10 0x00007ffff7ead5a2 in Fm::FolderView::onFileClicked(int, 
std::shared_ptr<Fm::FileInfo const> const&) () from 
/gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6
#11 0x000000000044aa55 in PCManFM::View::onFileClicked(int, 
std::shared_ptr<Fm::FileInfo const> const&) ()
[...]

Therefore, the interesting part would be either 
Fm::BasicFileLauncher::launchWithApp or Fm::BasicFileLauncher::launchFiles .

The former (inside package "libfm-qt") uses

  g_app_info_get_default_for_type

to get the app to use.  I suspect that that returns "gio-launch-desktop" 
without the full path--which is wrong. 

Checking glib source code, there's an environment variable GIO_LAUNCH_DESKTOP
that you can set (to the full path of gio-launch-desktop) for a first 
workaround.

Or, for a complete fix, patch glib-2.60.6/gio/gdesktopappinfo.c 

  tmp = "gio-launch-desktop"

to say

  tmp = "/gnu/store/xyz-glib-.../bin/gio-launch-desktop";

instead.  The latter has the advantage that it magically fixes ALL the 
applications.

I hope that helps.

Attachment: pgpPNGO4VJyEA.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]