diff -r 4d54b72983ae -r c743ef5928ba idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp Tue Jan 26 11:48:23 2010 +0200 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp Tue Feb 02 00:04:13 2010 +0200 @@ -1094,29 +1094,37 @@ break; } } - - CXnExtRenderingPluginWrapper* wrapper = - CXnExtRenderingPluginWrapper::NewL( aNode.PluginIfL(), *adapter ); - CleanupStack::PushL( wrapper ); - - parentAdapter->AppendChildL( *wrapper, aNode ); - CleanupStack::Pop( wrapper ); - component->SetControlAdapter( wrapper ); - - aNode.ComponentNodeImpl()->SetComponent( component ); - - component->SetNode( aNode.PluginIfL() ); - - wrapper->SetComponent( component ); - - wrapper->SetComponentsToInheritVisibility( ETrue ); - - wrapper->ActivateL(); - - CleanupStack::Pop( component ); - - return ETrue; + if( parentAdapter ) + { + CXnExtRenderingPluginWrapper* wrapper = + CXnExtRenderingPluginWrapper::NewL( aNode.PluginIfL(), *adapter ); + CleanupStack::PushL( wrapper ); + + parentAdapter->AppendChildL( *wrapper, aNode ); + CleanupStack::Pop( wrapper ); + + component->SetControlAdapter( wrapper ); + + aNode.ComponentNodeImpl()->SetComponent( component ); + + component->SetNode( aNode.PluginIfL() ); + + wrapper->SetComponent( component ); + + wrapper->SetComponentsToInheritVisibility( ETrue ); + + wrapper->ActivateL(); + + CleanupStack::Pop( component ); + + return ETrue; + } + else + { + CleanupStack::Pop( component ); + return EFalse; + } } else {