diff options
| author | Jabier Arraiza Cenoz <jabier.arraiza@marker.es> | 2014-04-20 10:18:32 +0000 |
|---|---|---|
| committer | Jabiertxof <jtx@jtx.marker.es> | 2014-04-20 10:18:32 +0000 |
| commit | b0459cb0bc55237dae4e9addeff7d9ed6a5f8ed6 (patch) | |
| tree | ce30c173b65d0c61f4245259504ab3acea683505 /src | |
| parent | update to trunk (diff) | |
| parent | Stop observer from crashing when it doesn't exist in preferences.xml (diff) | |
| download | inkscape-b0459cb0bc55237dae4e9addeff7d9ed6a5f8ed6.tar.gz inkscape-b0459cb0bc55237dae4e9addeff7d9ed6a5f8ed6.zip | |
update to trunk
(bzr r11950.1.330)
Diffstat (limited to 'src')
| -rw-r--r-- | src/desktop.cpp | 1 | ||||
| -rw-r--r-- | src/preferences.cpp | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/desktop.cpp b/src/desktop.cpp index 3ed6d9ef3..f14a314b9 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -138,7 +138,6 @@ SPDesktop::SPDesktop() : _w2d(), _d2w(), _doc2dt( Geom::Scale(1, -1) ), - // This doesn't work I don't know why. _image_render_observer(this, "/options/rendering/imageinoutlinemode"), grids_visible( false ) { diff --git a/src/preferences.cpp b/src/preferences.cpp index 2fec3b307..d0c3783b5 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -581,6 +581,8 @@ XML::Node *Preferences::_findObserverNode(Glib::ustring const &pref_path, Glib:: // find the node corresponding to the "directory". Inkscape::XML::Node *node = _getNode(node_key, create), *child; + if (!node) return node; + for (child = node->firstChild(); child; child = child->next()) { // If there is a node with id corresponding to the attr key, // this means that the last part of the path is actually a key (folder). @@ -601,7 +603,7 @@ void Preferences::addObserver(Observer &o) if ( _observer_map.find(&o) == _observer_map.end() ) { Glib::ustring node_key, attr_key; Inkscape::XML::Node *node; - node = _findObserverNode(o.observed_path, node_key, attr_key, false); + node = _findObserverNode(o.observed_path, node_key, attr_key, true); if (node) { // set additional data if (o._data) { |
