Comments (28)
Thanks for the detailed report!
We still don't know whether this is a bug in an unstable Qt version or a potential problem in libfm-qt. Since I don't use an unstable Qt and this crash doesn't happen here, I can't confirm it (yet?).
That being said, if you think this is really a bug in libfm-qt and have a backward compatible solution, you're welcome to make a PR.
from libfm-qt.
For the (future) record:
That commit was supposed to fix https://bugreports.qt.io/browse/QTBUG-44962.
from libfm-qt.
Indeed I figured this might be a /bit/ early, but thought I'd report it as at least a heads-up, in case someone sees that a fix will definitely be required.
I'll keep my eye, or eyes on changes, and will of course update/pull request in case I come up with something myself. :]
Thanks!
from libfm-qt.
@Chiitoo A check for nullity should prevent the crash but I'm not sure that it'll be enough to prevent side effects or that something else will be needed too. If the problem persists when Qt-5.11 gets stable, adding a fix or, perhaps, a workaround for a new Qt bug won't be difficult ;)
from libfm-qt.
can confirm the ProxyModelFilter bug in Arch with Qt 5.11rc1
Thread 1 "pcmanfm-qt" received signal SIGSEGV, Segmentation fault.
Fm::ProxyFolderModel::filterAcceptsRow (this=0x555555914750, source_row=0, source_parent=...)
at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/proxyfoldermodel.cpp:119
119 auto info = srcModel->fileInfoFromIndex(srcModel->index(source_row, 0, source_parent));
(gdb) bt
#0 0x00007ffff74ef952 in Fm::ProxyFolderModel::filterAcceptsRow(int, QModelIndex const&) const (this=0x555555914750, source_row=0, source_parent=...)
at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/proxyfoldermodel.cpp:119
#1 0x00007ffff5db8138 in () at /usr/lib/libQt5Core.so.5
#2 0x00007ffff5dba2fd in () at /usr/lib/libQt5Core.so.5
#3 0x00007ffff5dbaee9 in () at /usr/lib/libQt5Core.so.5
#4 0x00007ffff5e03a0c in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#5 0x00007ffff5d8ccaf in QAbstractItemModel::rowsInserted(QModelIndex const&, int, int, QAbstractItemModel::QPrivateSignal) () at /usr/lib/libQt5Core.so.5
#6 0x00007ffff5d9479c in QAbstractItemModel::endInsertRows() () at /usr/lib/libQt5Core.so.5
#7 0x00007ffff74eb117 in Fm::FolderModel::onFilesAdded(Fm::FileInfoList const&) (this=0x7fffe4006850, files=...)
at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/foldermodel.cpp:87
#8 0x00007ffff5e03b60 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#9 0x00007ffff754a955 in Fm::Folder::filesAdded(Fm::FileInfoList&) (this=this@entry=0x555555994410, _t1=...)
at /home/agaida/lxqt/libfm-qt-git/src/build/src/fm-qt_autogen/TAC5DWH4SE/moc_folder.cpp:304
#10 0x00007ffff74c0511 in Fm::Folder::onDirListFinished() (this=0x555555994410) at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/core/folder.cpp:528
#11 0x00007ffff5e042e2 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#12 0x00007ffff6b49984 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#13 0x00007ffff6b5125b in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#14 0x00007ffff5dd9bc9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#15 0x00007ffff5ddcc5c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt5Core.so.5
#16 0x00007ffff5e2d864 in () at /usr/lib/libQt5Core.so.5
#17 0x00007ffff5067368 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#18 0x00007ffff50675b1 in () at /usr/lib/libglib-2.0.so.0
#19 0x00007ffff506763e in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#20 0x00007ffff5e2ce49 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#21 0x00007fffecbdbb32 in () at /usr/lib/libQt5XcbQpa.so.5
#22 0x00007ffff5dd885c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#23 0x00007ffff5de0b56 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#24 0x0000555555575b81 in main ()
Sorry, couldn't build Qt 5.11 with debugging symbols - kde-unstable is likely not a first class arch member, so no PKGBUILD/Sources available (or i'm not clever enough)
from libfm-qt.
@tsujan - marked both bugs by @Chiitoo as release critical - esp. this one is a bummer because this bug prevent any testing of pcmanfm-qt under Qt 5.11 (if not empty folders are involved)
from libfm-qt.
@agaida I can't be sure until Qt5.11 comes to Manjaro Testing. I can make my other computer have Manjaro unstable though. That might take some time.
In the meantime, could you test an idea? Change
libfm-qt/src/proxyfoldermodel.cpp
Line 116 in 7fb4dea
bool ProxyFolderModel::filterAcceptsRow(int source_row, const QModelIndex& source_parent) const {
if(!showHidden_) {
if(FolderModel* srcModel = static_cast<FolderModel*>(sourceModel())) {
auto info = srcModel->fileInfoFromIndex(srcModel->index(source_row, 0, source_parent));
if(info && (info->isHidden() || (backupAsHidden_ && info->isBackup()))) {
return false;
}
}
}
// apply additional filters if there're any
..........
from libfm-qt.
It seems I should expect crashes in FeatherPad and Kvantum too. If so, I'll have the tedious job of looking into Qt5.11 source to know what has changed here and there..... :(
from libfm-qt.
i can understand your pain, spend several hours in the last two days playing with Arch and an activated kde-unstable repository - and to my surprise most things went well (ok, we don't talk about the missed PKGBUILD and the prepared sources for Qt 5.11rc - so i couldn't rebuild 5.11 with debug symbols).
Will test your suggested change later today, maybe @Chiitoo can jump right in too.
from libfm-qt.
Thanks for the suggestion! I had tried some similar changes, but had no success so far. :\
Aside from the line change to 'if(!filter->filterAcceptsRow(this, fileInfo))', the backtrace seems identical:
#0 Fm::ProxyFolderModel::filterAcceptsRow (this=0x555cc148cdc0, source_row=0, source_parent=...)
at src/proxyfoldermodel.cpp:128
#1 0x00007f60a9dc49e9 in QSortFilterProxyModelPrivate::filterAcceptsRowInternal
(this=this@entry=0x555cc148cdf0,
source_row=source_row@entry=0, source_parent=...)
at src/corelib/itemmodels/qsortfilterproxymodel.cpp:320
#2 0x00007f60a9dc9691 in QSortFilterProxyModelPrivate::source_items_inserted
(this=this@entry=0x555cc148cdf0, source_parent=...,
start=start@entry=0, end=end@entry=1, orient=orient@entry=Qt::Vertical)
at src/corelib/itemmodels/qsortfilterproxymodel.cpp:835
#3 0x00007f60a9dcbb78 in QSortFilterProxyModelPrivate::_q_sourceRowsInserted
(this=0x555cc148cdf0, source_parent=..., start=0, end=1)
at src/corelib/itemmodels/qsortfilterproxymodel.cpp:1504
#4 0x00007f60a9dcc4c5 in QSortFilterProxyModel::qt_static_metacall (_o=<optimized out>,
_c=<optimized out>, _id=<optimized out>,
_a=<optimized out>) at
../../include/QtCore/../../../qtcore-5.11.9999/src/corelib/tools/qscopedpointer.h:138
#5 0x00007f60a9e10bfd in QMetaObject::activate (sender=sender@entry=0x555cc15c3970,
signalOffset=<optimized out>,
local_signal_index=local_signal_index@entry=10, argv=argv@entry=0x7ffd582d8bb0)
at src/corelib/kernel/qobject.cpp:3771
#6 0x00007f60a9e10f8a in QMetaObject::activate (sender=sender@entry=0x555cc15c3970,
m=m@entry=0x7f60aa23e5c0 <QAbstractItemModel::staticMetaObject>,
local_signal_index=local_signal_index@entry=10,
argv=argv@entry=0x7ffd582d8bb0)
at src/corelib/kernel/qobject.cpp:3633
#7 0x00007f60a9da65c7 in QAbstractItemModel::rowsInserted (this=this@entry=0x555cc15c3970,
_t1=..., _t2=<optimized out>,
_t3=<optimized out>, _t4=...) at .moc/moc_qabstractitemmodel.cpp:587
#8 0x00007f60a9dacebe in QAbstractItemModel::endInsertRows (this=this@entry=0x555cc15c3970)
at src/corelib/itemmodels/qabstractitemmodel.cpp:2733
#9 0x00007f60ab40ee2f in Fm::FolderModel::onFilesAdded (this=0x555cc15c3970, files=...)
at src/foldermodel.cpp:87
#10 0x00007f60ab4103b3 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>,
QtPrivate::List<Fm::FileInfoList&>, void, void (Fm::FolderModel::*)
(Fm::FileInfoList const&)>::call (arg=<optimized out>, o=<optimized out>, f=<optimized out>)
at /usr/include/qt5/QtCore/qobjectdefs_impl.h:166
from libfm-qt.
@Chiitoo, thanks!
@agaida, I have KDE on my Manjaro and upgrading to unstable and compiling libfm-qt+pcmanfm-qt with debugging shouldn't be hard. For a few days, I'm busy with "life problems" but II'll try to run away from them as soon as possible ;)
from libfm-qt.
it isn't - but i was not eager to reinvent the wheel, get the sources, modify the PKGBUILD and build the whole qt with debug symbols - thats one of the points where an ebuild comes handy :D
from libfm-qt.
@tsujan - so your approach seems right and should be the same for auto fileinfo a few lines later - kind of work for me and lead to the next crash on:
#0 0x00007ffff74f60ad in Fm::FolderView::folder() const (this=0x5555559a62d0) at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/folderview.h:86
#1 0x00007ffff74f60ad in Fm::FolderView::path() (this=0x5555559a62d0) at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/folderview.h:95
#2 0x00007ffff74f60ad in Fm::FolderView::onFileClicked(int, std::shared_ptr<Fm::FileInfo const> const&) (this=0x5555559a62d0, fileInfo=std::shared_ptr<const Fm::FileInfo> (empty) = {...}, type=2) at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/folderview.cpp:1311
#3 0x00007ffff74f730d in Fm::FolderView::onFileClicked(int, std::shared_ptr<Fm::FileInfo const> const&) (this=0x5555559a62d0, type=<optimized out>, fileInfo=...) at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/folderview.cpp:1299
#4 0x0000555555595855 in PCManFM::View::onFileClicked(int, std::shared_ptr<Fm::FileInfo const> const&) ()
#5 0x00007ffff5e03b60 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#6 0x00007ffff754a193 in Fm::FolderView::clicked(int, std::shared_ptr<Fm::FileInfo const> const&) (this=this@entry=0x5555559a62d0, _t1=<optimized out>,
_t1@entry=2, _t2=std::shared_ptr<const Fm::FileInfo> (empty) = {...})
at /home/agaida/lxqt/libfm-qt-git/src/build/src/fm-qt_autogen/EWIEGA46WW/moc_folderview.cpp:262
#7 0x00007ffff74f545d in Fm::FolderView::emitClickedAt(Fm::FolderView::ClickType, QPoint const&) (this=this@entry=0x5555559a62d0, type=type@entry=Fm::FolderView::ContextMenuClick, pos=...) at /usr/include/c++/8.1.0/bits/shared_ptr_base.h:600
#8 0x00007ffff74f8a27 in Fm::FolderView::contextMenuEvent(QContextMenuEvent*) (this=0x5555559a62d0, event=0x7fffffffd1a0)
at /home/agaida/lxqt/libfm-qt-git/src/libfm-qt/src/folderview.cpp:817
#9 0x00007ffff6b89058 in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#10 0x00007ffff6b49984 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#11 0x00007ffff6b51770 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#12 0x00007ffff5dd9bc9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#13 0x00007ffff6ba4b94 in () at /usr/lib/libQt5Widgets.so.5
#14 0x00007ffff6ba6fd5 in () at /usr/lib/libQt5Widgets.so.5
#15 0x00007ffff6b49984 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#16 0x00007ffff6b5125b in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#17 0x00007ffff5dd9bc9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#18 0x00007ffff6381596 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib/libQt5Gui.so.5
#19 0x00007ffff6383516 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /usr/lib/libQt5Gui.so.5
#20 0x00007ffff635aa5c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Gui.so.5
#21 0x00007fffecbdbb3d in () at /usr/lib/libQt5XcbQpa.so.5
#22 0x00007ffff5dd885c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#23 0x00007ffff5de0b56 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#24 0x0000555555575b81 in main ()
from libfm-qt.
so the first part of this issue should be done
from libfm-qt.
@agaida Qt 5.11 isn't in Manjaro unstable. I have to get it by using Arch's PKGBUILD (and patches). So, it isn't as easy as I supposed but I'm doing it. Fortunately, on my second machine, I have gnome-shell and can work from inside it. Once in 8 years, gnome has a real use at last...
from libfm-qt.
For the first time after years, I really enjoyed gnome-shell. You could completely break Qt inside it without worrying about anything.
Anyhow, after adding another safeguard against null in ProxyFolderModel::filterAcceptsRow
:
#0 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count (__r=..., this=<optimized out>)
at /usr/include/c++/8.1.0/bits/shared_ptr_base.h:1149
1149 __shared_ptr(const __shared_ptr&) noexcept = default;
[Current thread is 1 (Thread 0x7f5e33874480 (LWP 31446))]
(gdb) where
#0 0x00007f5e3319500d in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count(std::__shared_count<(__gnu_cxx::_Lock_policy)2> const&) (__r=..., this=<optimized out>)
at /usr/include/c++/8.1.0/bits/shared_ptr_base.h:1149
#1 0x00007f5e3319500d in std::__shared_ptr<Fm::Folder, (__gnu_cxx::_Lock_policy)2>::__shared_ptr(std::__shared_ptr<Fm::Folder, (__gnu_cxx::_Lock_policy)2> const&) (this=<synthetic pointer>)
at /usr/include/c++/8.1.0/bits/shared_ptr_base.h:1149
#2 0x00007f5e3319500d in std::shared_ptr<Fm::Folder>::shared_ptr(std::shared_ptr<Fm::Folder> const&) (this=<synthetic pointer>) at /usr/include/c++/8.1.0/bits/shared_ptr.h:129
#3 0x00007f5e3319500d in Fm::FolderView::folder() const (this=0x5642c74556d0)
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/folderview.h:86
#4 0x00007f5e3319500d in Fm::FolderView::path() (this=0x5642c74556d0)
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/folderview.h:95
#5 0x00007f5e3319500d in Fm::FolderView::onFileClicked(int, std::shared_ptr<Fm::FileInfo const> const&) (this=0x5642c74556d0, fileInfo=std::shared_ptr<const Fm::FileInfo> (empty) = {...}, type=2)
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/folderview.cpp:1311
#6 0x00007f5e3319626d in Fm::FolderView::onFileClicked(int, std::shared_ptr<Fm::FileInfo const> const&) (this=0x5642c74556d0, type=<optimized out>, fileInfo=...)
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/folderview.cpp:1299
#7 0x00005642c68ec05d in PCManFM::View::onFileClicked(int, std::shared_ptr<Fm::FileInfo const> const&) (this=0x5642c74556d0, type=<optimized out>, fileInfo=...)
at /media/sda8/Arch/AUR/LXQt/pcmanfm-qt-20170430/pcmanfm-qt-master/pcmanfm/view.cpp:50
#8 0x00007f5e31aa2b60 in QMetaObject::activate(QObject*, int, int, void**) ()
at /usr/lib/libQt5Core.so.5
#9 0x00007f5e331e9123 in Fm::FolderView::clicked(int, std::shared_ptr<Fm::FileInfo const> const&) (this=this@entry=0x5642c74556d0, _t1=<optimized out>,
_t1@entry=2, _t2=std::shared_ptr<const Fm::FileInfo> (empty) = {...})
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/build/src/fm-qt_autogen/EWIEGA46WW/moc_folderview.cpp:262
#10 0x00007f5e331943bd in Fm::FolderView::emitClickedAt(Fm::FolderView::ClickType, QPoint const&) (this=this@entry=0x5642c74556d0, type=type@entry=Fm::FolderView::ContextMenuClick, pos=...)
at /usr/include/c++/8.1.0/bits/shared_ptr_base.h:600
#11 0x00007f5e33197987 in Fm::FolderView::contextMenuEvent(QContextMenuEvent*) (this=0x5642c74556d0, event=0x7fff47870ef0) at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/folderview.cpp:817
#12 0x00007f5e32828058 in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#13 0x00007f5e327e8984 in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
at /usr/lib/libQt5Widgets.so.5
#14 0x00007f5e327f0770 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#15 0x00007f5e31a78bc9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) ()
at /usr/lib/libQt5Core.so.5
...
Which is apparently the same thing you get but with debugging symbols. I "fixed" it by adding yet another safeguard against null but got another crash:
#0 0x00007f744eb495ad in Fm::FilePath::isNative() const (this=0x10)
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/core/filepath.h:107
#1 0x00007f744eb495ad in Fm::FilePath::toString() const (this=0x10)
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/core/filepath.h:67
#2 0x00007f744eb495ad in Fm::Folder::path() const (this=0x0)
at /media/sda8/Arch/AUR/LXQt/libfm-qt-20180222/libfm-qt-master/src/core/folder.cpp:156
#3 0x00007f744eb83717 in Fm::FolderView::onClipboardDataChange() (this=0x56368e607440)
at /usr/include/c++/8.1.0/bits/shared_ptr_base.h:1100
#4 0x00007f744d48fb60 in QMetaObject::activate(QObject*, int, int, void**) ()
at /usr/lib/libQt5Core.so.5
#5 0x00007f744da1bd46 in QClipboard::emitChanged(QClipboard::Mode) () at /usr/lib/libQt5Gui.so.5
#6 0x00007f74441477ee in () at /usr/lib/libQt5XcbQpa.so.5
#7 0x00007f744da1ba86 in QClipboard::setMimeData(QMimeData*, QClipboard::Mode) ()
at /usr/lib/libQt5Gui.so.5
#8 0x00007f744e323fa4 in QWidgetLineControl::copy(QClipboard::Mode) const ()
at /usr/lib/libQt5Widgets.so.5
#9 0x00007f744e32969b in QWidgetLineControl::processKeyEvent(QKeyEvent*) ()
at /usr/lib/libQt5Widgets.so.5
#10 0x00007f744e31c16b in QLineEdit::keyPressEvent(QKeyEvent*) () at /usr/lib/libQt5Widgets.so.5
#11 0x00007f744e2156a8 in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#12 0x00007f744e32242b in QLineEdit::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#13 0x00007f744e1d5984 in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
at /usr/lib/libQt5Widgets.so.5
#14 0x00007f744e1dd653 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#15 0x00007f744d465bc9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) ()
at /usr/lib/libQt5Core.so.5
This one is more ridiculous.
I have no idea about why this happens but this beta Qt is like a shaky ground to me. So, I'll wait until a stable Qt 5.11 comes out. Returning to the good stable Qt 5.10 for now.
from libfm-qt.
Found this: https://bugreports.qt.io/browse/QTBUG-67948
It's about the same commit @Chiitoo mentioned above. If Qt devs don't fix it before Qt 5.11 is considered stable, we'll have to find a workaround :(
from libfm-qt.
i would suggest to drop them a backtrace and point them to our repo - and if that means that they must build the whole LXQt - so be it. They wanted an example, they get one
from libfm-qt.
@agaida They already have a backtrace, much simpler than ours, but say, "Please provide a fully compatible example to reproduce the issue."
from libfm-qt.
At last, I found a way to make it work by following my gut feeling but before explaining it, I should find a rational explanation ;)
from libfm-qt.
In the meanwhile...
@agaida @Chiitoo would you please test this:
In CachedFolderModel::unref()
, change this line:
libfm-qt/src/cachedfoldermodel.cpp
Line 62 in 7fb4dea
to:
delete(this);
from libfm-qt.
Found the explanation. Waiting for your tests before making a PR.
from libfm-qt.
So far so good.
With just this 'delete(this);' change, I haven't been able to crash PCManFM-Qt yet.
What is more, it seems to have fixed the copying issue that later appeared as well (#175).
Feels good to use PCManFM-Qt again. ^^
Thanks!
from libfm-qt.
@Chiitoo Thank you very much for your test and especially, for your detailed report. If you didn't mention the Qt patch in question, it might take me a long time to find the cause of this problem.
from libfm-qt.
@agaida Stable Qt-5.11 will come to Arch/Debian soon and their derivatives will have it with a one week delay or so. IMO, we should have a new release with Qt-5.11 patches merged before that because otherwise, the non-git LXQt won't work. Am I right?
from libfm-qt.
totally right
from libfm-qt.
@Chiitoo It seems that you might use unstable Qt sometimes. I hope you'll keep telling us about probable problems. We may not be able to test and confirm them at first but, as you see in this case, your reports are valuable to us.
from libfm-qt.
Yes... sometimes. <shifty eyes> Heh.
I think it started when I was switching to using QupZilla as my web browser, and when that switched to using QtWebEngine, the development branches often had features I wanted to make use of, and didn't want to wait for a release. Since I'm using Gentoo, I already build everything from source, so building Qt from source directly with whatever configuration before a release is quite effortless as well.
Somehow I ended up helping with maintaining/packaging Qt for Gentoo, as well as LXQt itself, after I started actively using it.
Going forward, I'll be sure to report problems as long as I can, and as I'm getting more used to the Qt bug handling and Gerrit, I'm reporting things and pushing changes to them as well. :]
Thank you all for your efforts on making LXQt, well, LXQt!
from libfm-qt.
Related Issues (20)
- CMake configure fails to check for qpa/qplatformdialoghelper. HOT 6
- Crash on dropping files from another app under Wayland
- DND menu is unresponsive to mouseover under Wayland
- libfm-qt6: Emptying Trash (in LXQt file dialog) causes a crash HOT 3
- Extra CPU time taken by folders containing many desktop entries HOT 4
- Thumbnails 4mb is the default in file dialog. HOT 8
- Saving a file without its file extension takes the default literally HOT 2
- Treat desktop entry icons like thumbnails HOT 1
- Enter key for SaveAs sometimes does not enter directory. HOT 2
- WARNING: Please do not silence compilation warnings of Qt5-based libfm-qt
- Crash in `PathBar::closeEditor` HOT 1
- allow using any terminal emulator specified by programs instead of only from a list file HOT 3
- Renaming a file upon completion causes the previous file to be selected HOT 3
- lxqt-menu-data is not specified as a build dependency of libfm-qt in the README file
- Update `archivers.list` and `lxqt-archiver` after recent changes in some MIME type strings HOT 6
- Add "Downloads" to places menu HOT 1
- Enable custom_args in terminal.cpp
- Rmdir installation error on Qt6 HOT 7
- Allowing pasting of full path into "File name" entry? HOT 4
- libfm-qt still requires gtk2 HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libfm-qt.