File ab58993a-kderuntime-nepomuk-47branch-nullpointercrash.diff of Package kdebase4-runtime

commit ab58993ab29520345bbee4b5b75e88734401c96c
Author: Sebastian Trueg <trueg@kde.org>
Date:   Fri Oct 21 12:22:00 2011 +0200

    Check StorageAccess for 0 before using it.
    
    This avoids crashes.
    
    BUG: 284602

diff --git a/nepomuk/common/removablemediacache.cpp b/nepomuk/common/removablemediacache.cpp
index c6cde9b..00a1156 100644
--- a/nepomuk/common/removablemediacache.cpp
+++ b/nepomuk/common/removablemediacache.cpp
@@ -139,8 +139,10 @@ const Nepomuk::RemovableMediaCache::Entry* Nepomuk::RemovableMediaCache::findEnt
     for( QHash<QString, Entry>::const_iterator it = m_metadataCache.begin();
          it != m_metadataCache.end(); ++it ) {
         const Entry& entry = *it;
-        if ( entry.device().as<Solid::StorageAccess>()->isAccessible() &&
-             path.startsWith( entry.device().as<Solid::StorageAccess>()->filePath() ) )
+        const Solid::StorageAccess* storage = entry.device().as<Solid::StorageAccess>();
+        if ( storage &&
+             storage->isAccessible() &&
+             path.startsWith( storage->filePath() ) )
             return &entry;
     }
 
openSUSE Build Service is sponsored by