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

List:       kde-commits
Subject:    KDE/kdeedu/marble/src/lib
From:       Torsten Rahn <tackat () kde ! org>
Date:       2009-01-30 16:32:03
Message-ID: 1233333123.709590.9582.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 918737 by rahn:


- Don't crash if Marble doesn't find its plugins



 M  +1 -2      MarbleControlBox.cpp  
 M  +8 -5      PluginManager.cpp  


--- trunk/KDE/kdeedu/marble/src/lib/MarbleControlBox.cpp #918736:918737
@@ -179,7 +179,7 @@
     d->uiWidget.projectionComboBox->setEnabled( true );
     
     d->m_runnerManager = new MarbleRunnerManager( this );
-    
+
     connect( d->m_runnerManager, SIGNAL( modelChanged(  MarblePlacemarkModel* ) ),
              this,               SLOT( setLocations( MarblePlacemarkModel* ) ) );    
 
@@ -187,7 +187,6 @@
              this,                        SLOT( searchLineChanged( const QString& ) ) );
     connect( d->uiWidget.searchLineEdit,  SIGNAL( returnPressed() ),
              this,                        SLOT( searchReturnPressed() ) );
-
 }
 
 MarbleControlBox::~MarbleControlBox()
--- trunk/KDE/kdeedu/marble/src/lib/PluginManager.cpp #918736:918737
@@ -92,13 +92,16 @@
         qDebug() << fileName << " - " << MarbleDirs::pluginPath( fileName );
         QPluginLoader loader( MarbleDirs::pluginPath( fileName ) );
 
-        QObject *obj = loader.instance();
-        MarbleRenderPlugin* layerPlugin = qobject_cast<MarbleRenderPlugin *>(obj);
-        MarbleRenderPlugin* instance = layerPlugin->instance();
+        QObject * obj = loader.instance();
 
-        if( layerPlugin && instance ) {
-            d->m_renderPlugins.append( instance );
+        MarbleRenderPlugin * layerPlugin;
+        if ( obj ) {
+            layerPlugin = qobject_cast<MarbleRenderPlugin *>(obj);
         }
+
+        if( obj && layerPlugin ) {
+            d->m_renderPlugins.append( layerPlugin );
+        }
         else {
             qDebug() << "Plugin Failure: " << fileName << " is not a valid Marble Plugin:";
             qDebug() << loader.errorString();
[prev in list] [next in list] [prev in thread] [next in thread] 

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