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

List:       kde-commits
Subject:    koffice
From:       Thomas Zander <zander () kde ! org>
Date:       2009-07-30 15:54:11
Message-ID: 1248969251.566151.9493.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1004614 by zander:

Use qobject_cast for the KoImageData which is much safer than dynamic_cast

 M  +1 -1      filters/karbon/svg/svgexport.cc  
 M  +2 -2      krita/shape/KritaShape.cpp  
 M  +1 -1      plugins/pictureshape/ChangeImageCommand.cpp  


--- trunk/koffice/filters/karbon/svg/svgexport.cc #1004613:1004614
@@ -786,7 +786,7 @@
 
 void SvgExport::saveImage(KoShape *picture)
 {
-    KoImageData * imageData = dynamic_cast<KoImageData*>( picture->userData() );
+    KoImageData *imageData = qobject_cast<KoImageData*>(picture->userData());
     if( ! imageData )
     {
         qWarning() << "Picture has no image data. Omitting.";
--- trunk/koffice/krita/shape/KritaShape.cpp #1004613:1004614
@@ -103,7 +103,7 @@
         painter.drawImage(paintRect.toRect(), qimg);
 
     } else if (m_d->doc == 0)
-        tryLoadFromImageData(dynamic_cast<KoImageData*>(KoShape::userData()));
+        tryLoadFromImageData(qobject_cast<KoImageData*>(KoShape::userData()));
 }
 
 void KritaShape::setDisplayProfile(const QString & profileName)
@@ -129,7 +129,7 @@
     if (m_d && m_d->doc && m_d->doc->image())   // all done
         return;
 
-    KoImageData *data = dynamic_cast<KoImageData*>(KoShape::userData());
+    KoImageData *data = qobject_cast<KoImageData*>(KoShape::userData());
     if (data == 0 || data->image().isNull())
         return; // no data available at all, so don't try to wait later on.
 
--- trunk/koffice/plugins/pictureshape/ChangeImageCommand.cpp #1004613:1004614
@@ -32,7 +32,7 @@
 , m_newImageData(newImageData)
 {
     Q_ASSERT( shape );
-    KoImageData * oldImageData = dynamic_cast<KoImageData *>(m_shape->userData());
+    KoImageData *oldImageData = qobject_cast<KoImageData*>(m_shape->userData());
     // we need new here as setUserData deletes the old data
     m_oldImageData = oldImageData ? new KoImageData( *oldImageData ): 0;
     setText(i18n("Change image"));
[prev in list] [next in list] [prev in thread] [next in thread] 

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