diff options
| author | Johan B. C. Engelen <jbc.engelen@swissonline.ch> | 2007-11-23 19:40:07 +0000 |
|---|---|---|
| committer | johanengelen <johanengelen@users.sourceforge.net> | 2007-11-23 19:40:07 +0000 |
| commit | a4b98e357262dec123a61f6e5b084996fdc3515c (patch) | |
| tree | 30e5d8d74d3db97eef5a31de51d8018d89380cdb /src/ui/widget/registered-widget.cpp | |
| parent | fix bug caused by rev. 16540 (diff) | |
| download | inkscape-a4b98e357262dec123a61f6e5b084996fdc3515c.tar.gz inkscape-a4b98e357262dec123a61f6e5b084996fdc3515c.zip | |
Fix [ 1835591 ] Reproducible crash on opening the attached file
(bzr r4129)
Diffstat (limited to 'src/ui/widget/registered-widget.cpp')
| -rw-r--r-- | src/ui/widget/registered-widget.cpp | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/src/ui/widget/registered-widget.cpp b/src/ui/widget/registered-widget.cpp index 804a403f6..1ee52cc99 100644 --- a/src/ui/widget/registered-widget.cpp +++ b/src/ui/widget/registered-widget.cpp @@ -221,16 +221,19 @@ RegisteredScalarUnit::getSU() void RegisteredScalarUnit::setValue (double val) { - _widget->setValue (val); + if (_widget) + _widget->setValue (val); } void RegisteredScalarUnit::on_value_changed() { +g_message("on_value_changed"); if (_widget->setProgrammatically) { _widget->setProgrammatically = false; return; } +g_message("on_value_changed1"); if (_wr->isUpdating()) return; @@ -284,7 +287,8 @@ RegisteredScalar::getS() void RegisteredScalar::setValue (double val) { - _widget->setValue (val); + if (_widget) + _widget->setValue (val); } void @@ -483,9 +487,15 @@ const Glib::ustring& key, Registry& wr, Inkscape::XML::Node* repr_in, SPDocument void RegisteredRadioButtonPair::setValue (bool second) { + if (!_rb1 || !_rb2) + return; + setProgrammatically = true; - if (second) _rb2->set_active(); - else _rb1->set_active(); + if (second) { + _rb2->set_active(); + } else { + _rb1->set_active(); + } } void @@ -549,7 +559,8 @@ RegisteredPoint::getPoint() void RegisteredPoint::setValue (double xval, double yval) { - _widget->setValue(xval, yval); + if (_widget) + _widget->setValue(xval, yval); } void @@ -615,6 +626,9 @@ RegisteredRandom::getR() void RegisteredRandom::setValue (double val, long startseed) { + if (!_widget) + return; + _widget->setValue (val); _widget->setStartSeed(startseed); } |
