[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdebase/apps/konqueror
From:       David Faure <faure () kde ! org>
Date:       2008-10-13 10:10:45
Message-ID: 1223892645.249301.24055.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 870787 by dfaure:

Fix kfmclient making konq abort when "open external links in new tab" is enabled and \
konq windows are on other desktops. An invalid QDBusObjectPath() can't be shipped \
over DBus, so use "/" as marker for "invalid path" (no way "/" could ever be a window \
                anyway).
BUG: 167667


 M  +2 -1      client/kfmclient.cpp  
 M  +10 -7     src/KonquerorAdaptor.cpp  


--- trunk/KDE/kdebase/apps/konqueror/client/kfmclient.cpp #870786:870787
@@ -365,7 +365,8 @@
                     QDBusReply<QDBusObjectPath> windowReply = konq.windowForTab();
                     if ( windowReply.isValid() ) {
                         QDBusObjectPath path = windowReply;
-                        if ( !path.path().isEmpty() ) {
+                        // "/" is the indicator for "no object found", since we \
can't use an empty path +                        if ( path.path() != "/" ) {
                             foundApp = service;
                             foundObj = path;
                         }
--- trunk/KDE/kdebase/apps/konqueror/src/KonquerorAdaptor.cpp #870786:870787
@@ -64,7 +64,7 @@
 #endif
     KonqMainWindow *res = KonqMisc::createSimpleWindow( KUrl(url), \
KParts::OpenUrlArguments() );  if ( !res )
-        return QDBusObjectPath();
+        return QDBusObjectPath("/");
     return QDBusObjectPath( res->dbusName() );
 }
 
@@ -80,7 +80,7 @@
     KUrl finalURL = KonqMisc::konqFilteredURL( 0, url );
     KonqMainWindow *res = KonqMisc::createNewWindow( finalURL, args, \
KParts::BrowserArguments(), false, QStringList(), tempFile );  if ( !res )
-        return QDBusObjectPath();
+        return QDBusObjectPath("/");
     return QDBusObjectPath( res->dbusName() );
 }
 
@@ -92,7 +92,7 @@
 #endif
     KonqMainWindow *res = KonqMisc::createNewWindow( KUrl(url), \
KParts::OpenUrlArguments(), KParts::BrowserArguments(), false, filesToSelect );  if ( \
                !res )
-        return QDBusObjectPath();
+        return QDBusObjectPath("/");
     return QDBusObjectPath( res->dbusName() );
 }
 
@@ -106,7 +106,7 @@
     kDebug(1202) << path << "," << filename;
     KonqMainWindow *res = KonqMisc::createBrowserWindowFromProfile( path, filename \
);  if ( !res )
-        return QDBusObjectPath();
+        return QDBusObjectPath("/");
     return QDBusObjectPath( res->dbusName() );
 }
 
@@ -118,7 +118,7 @@
 #endif
     KonqMainWindow *res = KonqMisc::createBrowserWindowFromProfile( path, filename, \
KUrl(url) );  if ( !res )
-        return QDBusObjectPath();
+        return QDBusObjectPath("/");
     return QDBusObjectPath( res->dbusName() );
 }
 
@@ -132,7 +132,7 @@
     args.setMimeType( mimetype );
     KonqMainWindow *res = KonqMisc::createBrowserWindowFromProfile( path, filename, \
KUrl(url), args );  if ( !res )
-        return QDBusObjectPath();
+        return QDBusObjectPath("/");
     return QDBusObjectPath( res->dbusName() );
 }
 
@@ -175,11 +175,14 @@
 	    if(
 #endif
                 !KonqMainWindow::isPreloaded() ) { // we want a tab in an already \
shown window +                Q_ASSERT(!window->dbusName().isEmpty());
                 return QDBusObjectPath( window->dbusName() );
             }
         }
     }
-    return QDBusObjectPath();
+    // We can't use QDBusObjectPath(), dbus type 'o' must be a valid object path.
+    // So we use "/" as an indicator for not found.
+    return QDBusObjectPath("/");
 }
 
 bool KonquerorAdaptor::processCanBeReused( int screen )


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic