Version: (using KDE KDE 3.1.3) Installed from: Slackware Packages OS: Linux I've only tried this with one screensaver as of yet (Euphoria), but the problem seems to have come up recently when I upgraded to the official Slackware packages of KDE 3.1.3. If I enable desktop sharing and connect remotely while this screensaver is running, everything works fine until I disconnect. At this point krfb fails to answer any more connections and uses 100% of the CPU. It will only respond to kill -9 at this point, and of course is unable to answer any connections afterward. I'm not sure if the GL screensaver is related or not, but I thought it best to mention it in either case.
Just as a side note, I've tried it without the screensaver turned on at all as well. Apparently, the first remote desktop session will work fine until disconnecting. On disconnecting I get a sigsev error box (signal 11 I think). I haven't viewed the backtrace yet, but this can be repeated simply by connecting and disconnecting to a remote desktop session.
Created attachment 2126 [details] Backtrace from crashed application
hmm... can't reproduce it, and if I can believe the stacktrace QApplication crashes. Do you use anything special, like Qt 3.2 ?
This is the process that I've been using to reproduce it myself (although I guess this is going to sound redundant :>) 1) Enable uninvited connections for remote desktop sharing 2) Move to another machine 3) Connect to the shared desktop 4) Disconnect 5) SIGSEV occurs on disconnect I actually tried upgrading to 3.2 to see if that would solve the problem..unfortunately it didn't, so I changed back to the previous version again.
I've noticed, as well, that the Slackware packages have recently been changed to i486, but there is no i486 build of QT included. Could it be some sort of a problem between the i386 build of QT and the i486-built KDE packages?
AFAIK there should be no problem when combining i386 with i486 binaries. Did you use krfb in older KDE versions? 3.1.3 is pretty new and I havent tried any packages. if someone reads this who tried 3.1.3's krfb on other distributions, could you please check whether it works for you?
I began using krfb in version 3.1.1, I believe. In that version, and in 3.1.2 (both under Slackware 9.0, official and unofficial packages), both worked fine even when operating with GL screensavers (which I'm thinking probably isn't related to the problem now) :>
I looked at the diff between 3.1.1 and 3.1.3 and found a change that may cause the crash in QApplication. At least it is the only change that could explain it... if the bug does not go away in the 3.1 branch please reopen.
Subject: KDE_3_1_BRANCH: kdenetwork/krfb/krfb CVS commit by tjansen: Use QApplication::desktop() to obtain the QDesktopWidget, as recommended in the Qt docs. This will hopefully solve bug 61904. CCMAIL: 61904-done@bugs.kde.org M +2 -2 rfbcontroller.cc 1.46.2.5 --- kdenetwork/krfb/krfb/rfbcontroller.cc #1.46.2.4:1.46.2.5 @@ -280,7 +280,7 @@ PointerEvent::PointerEvent(int b, int _x void PointerEvent::exec() { - static QDesktopWidget desktopWidget; + QDesktopWidget *desktopWidget = QApplication::desktop(); - int screen = desktopWidget.screenNumber(); + int screen = desktopWidget->screenNumber(); if (screen < 0) screen = 0;
Thank you again for the quick response! Unfortunately, unless I can get another machine to test it on (this one is currently in heavy use :>), I'll have to wait until an official new version is released to give the patched version a spin. Hopefully it'll be constituted into a later release.
Problem is solved! I have recompiled krfb for Red Hat 9.0. No more crashes when disconnecting.
Please use KApplication::Desktop() as it better takes into account XInerama, and the KDE settings regarding this.
There is no KApplication::Desktop() (or KApplication::desktop()) in kdelibs HEAD (beside that VNC is not Xinerama-aware, I just need the number of the current screen).
*** Bug 62181 has been marked as a duplicate of this bug. ***
Please mind my apparent ignorance in certain areas... Is there a reasonably easy way for me to correct this issue in SuSE 8.2/KDE 3.1.3? I use remote desktop a lot for so many different things. Thanks, Dave
Unfortunately not, as far as I know. I am not sure why it doesnt crash here. Do you have a multi-screen setup?
Nope. :( Hrm, so does this mean I either downgrade back to 3.1.2 or wait until 3.2 (December?) Is it possible for an updated kdenetwork (or whatever module, I have no idea, heh) to be released as a bug fix update? --Dave
I have no idea if and when KDE 3.1.4 is planned. A fast solution would be to download the kdenetwork source rpm, change the 2 lines (see comment 9) and install it. Distributions could also update their RPMs this way.
I'd do it, but I have no idea where'd I'd get the SuSE source RPMs, how to unpackage 'em, or repackage 'em. If anyone could provide some assistance or a fixed SuSE RPM, I know I would appreciate it. Thanks, Dave