]> sigrok.org Git - pulseview.git/blobdiff - pv/mainwindow.cpp
Fixed PD list, so that it doesn't crash when empty
[pulseview.git] / pv / mainwindow.cpp
index 0e971ce06cc7373f6da132479483101f187aa3c7..ba232e25d0cb5afae12d5bb3f80a09f6b2fe3714 100644 (file)
@@ -305,14 +305,15 @@ void MainWindow::setup_add_decoders(QMenu *parent)
 {
        GSList *l = g_slist_sort(g_slist_copy(
                (GSList*)srd_decoder_list()), decoder_name_cmp);
 {
        GSList *l = g_slist_sort(g_slist_copy(
                (GSList*)srd_decoder_list()), decoder_name_cmp);
-       do {
+       for(; l; l = l->next)
+       {
                QAction *const action = parent->addAction(QString(
                        ((srd_decoder*)l->data)->name));
                action->setData(qVariantFromValue(l->data));
                _decoders_add_mapper.setMapping(action, action);
                connect(action, SIGNAL(triggered()),
                        &_decoders_add_mapper, SLOT(map()));
                QAction *const action = parent->addAction(QString(
                        ((srd_decoder*)l->data)->name));
                action->setData(qVariantFromValue(l->data));
                _decoders_add_mapper.setMapping(action, action);
                connect(action, SIGNAL(triggered()),
                        &_decoders_add_mapper, SLOT(map()));
-       } while ((l = l->next));
+       }
        g_slist_free(l);
 }
 
        g_slist_free(l);
 }