]> git.sesse.net Git - kdenlive/commitdiff
Avoid crash - check if dialog pointer is still valid
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Tue, 24 Jul 2012 10:33:52 +0000 (12:33 +0200)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Tue, 24 Jul 2012 10:33:52 +0000 (12:33 +0200)
src/customtrackview.cpp
src/mainwindow.cpp
src/monitor.cpp
src/titlewidget.cpp

index 82931894f6ac4240b293a1342ea1d395bfafcd60..4c7523193fc2c6e142a31a75c38c21165152e7ee 100644 (file)
@@ -1406,8 +1406,8 @@ void CustomTrackView::editItemDuration()
                 updateTrackDuration(clipInfo.track, moveCommand);
                 m_commandStack->push(moveCommand);
             }
-        delete d;
         }
+        delete d;
     } else {
         emit displayMessage(i18n("Item is locked"), ErrorMessage);
     }
index ba8e828e7392612e7f520816091368f86f8fc73a..2712972cd7a25b1f54b1cf0d1c55bc54ae06e8e2 100644 (file)
@@ -3758,7 +3758,7 @@ int MainWindow::getNewStuff(const QString &configFile)
 #if KDE_IS_VERSION(4,3,80)
     QPointer<KNS3::DownloadDialog> dialog = new KNS3::DownloadDialog(configFile);
     dialog->exec();
-    entries = dialog->changedEntries();
+    if (dialog) entries = dialog->changedEntries();
     foreach(const KNS3::Entry & entry, entries) {
         if (entry.status() == KNS3::Entry::Installed)
             kDebug() << "// Installed files: " << entry.installedFiles();
index 2effe24aca1db94d08ec43067d74c26cf6c99ebf..34eb1de5adc2420bd94ee88bb6bd82dc8279ab06 100644 (file)
@@ -583,7 +583,8 @@ void Monitor::slotExtractCurrentFrame()
     fs->setConfirmOverwrite(true);
     fs->setKeepLocation(true);
     fs->exec();
-    QString path = fs->selectedFile();
+    QString path;
+    if (fs) path = fs->selectedFile();
     delete fs;
     if (!path.isEmpty()) {
         frame.save(path);
index d25b8602e44c6a535f2f529fbfc02403f08cd8b4..034e98e76415647b1fa7d63f8281386caf2f4781 100644 (file)
@@ -1853,7 +1853,7 @@ void TitleWidget::saveTitle(KUrl url)
         fs->setConfirmOverwrite(true);
         fs->setKeepLocation(true);
         fs->exec();
-        url = fs->selectedUrl();
+        if (fs) url = fs->selectedUrl();
         delete fs;
     }
     if (!url.isEmpty()) {