]> sigrok.org Git - pulseview.git/blobdiff - pv/mainwindow.cpp
Fix crash when saving session with open files
[pulseview.git] / pv / mainwindow.cpp
index bc20898249afd70ee4f90972304289a2db7ab0ba..77dc946213ef20850247fc0b5acf15f51b820df3 100644 (file)
@@ -273,11 +273,13 @@ void MainWindow::save_ui_settings()
                                dynamic_pointer_cast< devices::HardwareDevice >
                                (session->device());
 
-                       if (device->hardware_device()->driver()->name() == "demo")
+                       if (device &&
+                               device->hardware_device()->driver()->name() == "demo")
                                continue;
                }
 
                settings.beginGroup("Session" + QString::number(id++));
+               settings.remove("");  // Remove all keys in this group
                session->save_settings(settings);
                settings.endGroup();
        }