diff -r 5b3385a43d68 -r 34937ec34dac photosgallery/viewframework/views/viewbase/src/glxmedialistviewbase.cpp --- a/photosgallery/viewframework/views/viewbase/src/glxmedialistviewbase.cpp Wed Sep 01 12:33:26 2010 +0100 +++ b/photosgallery/viewframework/views/viewbase/src/glxmedialistviewbase.cpp Tue Sep 14 21:19:17 2010 +0300 @@ -169,8 +169,11 @@ if ((navigationalState->Id() != TMPXItemId( KGlxCollectionPluginAlbumsImplementationUid))) { - iPreloadContextForCommandHandlers - = new (ELeave) CGlxAttributeContext(&iSelectionIterator); + if (!iPreloadContextForCommandHandlers) + { + iPreloadContextForCommandHandlers + = new (ELeave) CGlxAttributeContext(&iSelectionIterator); + } TInt commandHandlerCount = iCommandHandlerList.Count(); for (TInt i = 0; i < commandHandlerCount; i++) { @@ -390,6 +393,8 @@ if (iPreloadContextForCommandHandlers) { iMediaList->RemoveContext(iPreloadContextForCommandHandlers); + delete iPreloadContextForCommandHandlers; + iPreloadContextForCommandHandlers = NULL; } iMediaList->Close(); iMediaList = NULL;