From d04860c5b4725baed4db6f992f5728407cc72d87 Mon Sep 17 00:00:00 2001 From: "Jon A. Cruz" Date: Mon, 29 May 2006 16:12:36 +0000 Subject: workaround assertion upon file revert (bzr r1064) --- src/dialogs/layers-panel.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'src/dialogs/layers-panel.cpp') diff --git a/src/dialogs/layers-panel.cpp b/src/dialogs/layers-panel.cpp index cdcafbbc1..a09ce1527 100644 --- a/src/dialogs/layers-panel.cpp +++ b/src/dialogs/layers-panel.cpp @@ -499,13 +499,16 @@ SPObject* LayersPanel::_selectedLayer() void LayersPanel::_pushTreeSelectionToCurrent() { SPObject* inTree = _selectedLayer(); - if ( inTree ) { - SPObject* curr = _desktop->currentLayer(); - if ( curr != inTree ) { - _mgr->setCurrentLayer( inTree ); + // TODO hunt down the possible API abuse in getting NULL + if ( _desktop->currentRoot() ) { + if ( inTree ) { + SPObject* curr = _desktop->currentLayer(); + if ( curr != inTree ) { + _mgr->setCurrentLayer( inTree ); + } + } else { + _mgr->setCurrentLayer( _desktop->doc()->root ); } - } else { - _mgr->setCurrentLayer( _desktop->doc()->root ); } } -- cgit v1.2.3