]> sigrok.org Git - pulseview.git/blobdiff - pv/prop/double.cpp
Fix random clazy warnings
[pulseview.git] / pv / prop / double.cpp
index 57512d723ff26b5cd3473432040e975cf914e8bb..f39ae844fc97ce34b4519d4a67546a867e8cdb74 100644 (file)
 
 #include <cassert>
 
+#include <QDebug>
 #include <QDoubleSpinBox>
 
+#include <libsigrokcxx/libsigrokcxx.hpp>
+
 #include "double.hpp"
 
 using boost::optional;
@@ -54,9 +57,14 @@ QWidget* Double::get_widget(QWidget *parent, bool auto_commit)
        if (!getter_)
                return nullptr;
 
-       Glib::VariantBase variant = getter_();
-       if (!variant.gobj())
+       try {
+               Glib::VariantBase variant = getter_();
+               if (!variant.gobj())
+                       return nullptr;
+       } catch (const sigrok::Error &e) {
+               qWarning() << tr("Querying config key %1 resulted in %2").arg(name_, e.what());
                return nullptr;
+       }
 
        spin_box_ = new QDoubleSpinBox(parent);
        spin_box_->setDecimals(decimals_);
@@ -80,7 +88,15 @@ void Double::update_widget()
        if (!spin_box_)
                return;
 
-       Glib::VariantBase variant = getter_();
+       Glib::VariantBase variant;
+
+       try {
+               variant = getter_();
+       } catch (const sigrok::Error &e) {
+               qWarning() << tr("Querying config key %1 resulted in %2").arg(name_, e.what());
+               return;
+       }
+
        assert(variant.gobj());
 
        double value = Glib::VariantBase::cast_dynamic<Glib::Variant<double>>(