Open shevek opened 7 years ago
For sure, Qt5 is bad on reconnect (I actually have to re-open Scudcloud when I'm disconnected from Internet for few hours). I'll search if I can improve this in some way.
Hm, I've updated my qtwebkit, and the reconnect improved a lot. Maybe I should publish a package with it.
Perhaps so. Recent scudcloud ALWAYS needs a restart after network change.
@shevek Yeap, I'm investigating this. Even with new qtwebkit I'm facing this too. I'll keep searching for a solution.
It appears this was fixed in Qt 5.5.14: https://codereview.qt-project.org/#/c/113478/
I'll check if I can create a class inheriting from QtNetwork manager and apply a fix like that in python.
Looks like the patches from https://bugreports.qt.io/browse/QTBUG-46323 are already included in current debian versions (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=804883) but the problem still persists, even with Qt 5.7.1.
Thank you for adding this info, @jayme-github.
In a first moment I though to try to mimic some of the patch using Python, but after check the code, not an easy task (similar to how I've translated the spell suggester from Qupzilla).
But if this is not fixed yet... :(
Hm, yea - maybe the "new" problem is a different one. As said in #573 I can only see some errors in the webkit debug console, no QNetworkReplyImplPrivate
errors here.
Usually the QNetworkReplyImplPrivate
error is displayed in the command line (so, you have to start scudcloud from there).
Exactly the same problem here, running Ubuntu 16.04.2 LTS on Gnome3.
Usually the QNetworkReplyImplPrivate error is displayed in the command line (so, you have to start scudcloud from there).
Did that of cause. I only see messages like the following, but I'm unsure if they are related to this issue:
QObject::disconnect: Unexpected null parameter
Even using the internal browser reload, the Qt libraries appears to not reconnect properly. I was thinking to build a try/catch around these failures and fire a reload.
Yea, it's completely strange and probably there is more than one specific issue. I did some further testing with the changes in https://github.com/jayme-github/scudcloud/commit/af3cd5491c1ed5d97c51a5eedbb0da94b1e97e86:
@raelgc do you know where those QObject::disconnect: Unexpected null parameter
messages are triggered?
@jayme-github I'm starting scudcloud by command line and I'll watch it for the next hours.
This could be related: https://bugreports.qt.io/browse/QTBUG-57110
Laptop just woke up from suspend (on the same network as when going to sleep):
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/28"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/27"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/28"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/27"
QObject::disconnect: Unexpected null parameter
QObject::disconnect: Unexpected null parameter
QObject::disconnect: Unexpected null parameter
QObject::disconnect: Unexpected null parameter
QObject::disconnect: Unexpected null parameter
QObject::disconnect: Unexpected null parameter
QObject::disconnect: Unexpected null parameter
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/30"
QObject::disconnect: Unexpected null parameter
2017-06-06 06:07:06.345186 _networkAccessibleChanged: 0
2017-06-06 06:07:06.345616 _networkAccessibleChanged: 0
2017-06-06 06:07:06.345664 _networkAccessibleChanged: 0
Switching networks does not bring back accessible state.
Very similar results after suspend/wakeup:
sys:1: Warning: Source ID 599 was not found when attempting to remove it
sys:1: Warning: Source ID 1656 was not found when attempting to remove it
QObject::disconnect: Unexpected null parameter
QNetworkReplyImplPrivate::error: Internal problem, this method must only be called once.
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
"No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/NetworkManager/ActiveConnection/0"
QObject::disconnect: Unexpected null parameter
ScudCloud Version
Paste the output for
scudcloud --version
below:ScudCloud 1.50 Python 3.5.2 Qt 5.5.1 PyQt 5.5.1 SIP 4.17
Distro and Desktop info
Distributor ID: Ubuntu Description: Ubuntu 16.04.2 LTS Release: 16.04 Codename: xenial xfce
Expected behavior
Actual behavior
QNetworkReplyImplPrivate::error: Internal problem, this method must only be called once. QNetworkReplyImplPrivate::error: Internal problem, this method must only be called once. QNetworkReplyImplPrivate::error: Internal problem, this method must only be called once.
Steps to reproduce