Bug 321812 - RDP stops working because of 0.0.1 version mismatch
Summary: RDP stops working because of 0.0.1 version mismatch
Status: RESOLVED INTENTIONAL
Alias: None
Product: krdc
Classification: Applications
Component: RDP (show other bugs)
Version: 4.10.90
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Urs Wolfer
URL:
Keywords:
: 323564 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-07-01 09:21 UTC by Pascal d'Hermilly
Modified: 2013-08-16 01:27 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pascal d'Hermilly 2013-07-01 09:21:22 UTC
KRDC RDP does not work at all after upgrade to 4.11 beta2
It says 'The version of "xfreerdp" you are using is too old. xfreerdp 1.0.2 or greater is required.'
I have 1.0.1 and it seems quite obstructive that RDP totally breaks because of this mismatch.
Of course "xfreerdp [servername]" in the terminal works, but many need a gui.

Using Kubuntu packages.
Hmm, just strikes me, is this a packaging issue? None the less, does KRDC really need the last minor version?

Reproducible: Always
Comment 1 Urs Wolfer 2013-07-01 09:27:55 UTC
1.0.2 is required because of a bug in 1.0.1 which blocks from using it in KRDC. We cannot change anything here. Please report it to your distribution to update rdesktop.
Comment 2 Jekyll Wu 2013-07-01 09:29:42 UTC
Here is the relevant code: 

void RdpView::receivedStandardError()
{
    const QString output(m_process->readAllStandardError());
    kDebug(5012) << "receivedStandardError:" << output;
    QString line;
    int i = 0;
    while (!(line = output.section('\n', i, i)).isEmpty()) {
        
        // the following error is issued by freerdp because of a bug in freerdp 1.0.1 and below;
        // see: https://github.com/FreeRDP/FreeRDP/pull/576
        //"X Error of failed request:  BadWindow (invalid Window parameter)
        //   Major opcode of failed request:  7 (X_ReparentWindow)
        //   Resource id in failed request:  0x71303348
        //   Serial number of failed request:  36
        //   Current serial number in output stream:  36"
        if (line.contains(QLatin1String("X_ReparentWindow"))) {
            KMessageBox::error(0, i18n("The version of \"xfreerdp\" you are using is too old.\n"
                                       "xfreerdp 1.0.2 or greater is required."),
                               i18n("RDP Failure"));
            connectionError();
            return;
        }
        i++;
    }
}
Comment 3 Pascal d'Hermilly 2013-07-01 09:31:15 UTC
Thank you.
I filed a bug for Kubuntu.
https://bugs.launchpad.net/kubuntu-ppa/+bug/1196466
Comment 4 Urs Wolfer 2013-07-01 09:32:36 UTC
@Jekyll Wu: Thanks for posting the code. You can read in this code more exactly why 1.0.2 is required.
Comment 5 Jekyll Wu 2013-08-16 01:27:44 UTC
*** Bug 323564 has been marked as a duplicate of this bug. ***