diff -r 102470b85c8e -r 004e149c6f0b application/src/PodcastShowsView.cpp --- a/application/src/PodcastShowsView.cpp Sun Nov 21 19:56:24 2010 +0000 +++ b/application/src/PodcastShowsView.cpp Mon Nov 22 12:55:34 2010 +0000 @@ -657,14 +657,12 @@ break; case EPodcastMarkAllPlayed: { - if (iShowNewShows) { - TBuf msg; - iEikonEnv->ReadResourceL(msg, R_MARK_ALL_OLD_QUERY); - if (!ShowQueryMessageL(msg)) - { - break; - } - } + TBuf msg; + iEikonEnv->ReadResourceL(msg, R_MARK_ALL_OLD_QUERY); + if (!ShowQueryMessageL(msg)) + { + break; + } iPodcastModel.MarkSelectionPlayedL(); UpdateListboxItemsL(); } @@ -936,7 +934,7 @@ { CShowInfo *info = iPodcastModel.ActiveShowList()[index]; info->SetPlayState(aPlayed ? EPlayed : ENeverPlayed); - if (aPlayed) + if (aPlayed && info->DownloadState() == EDownloaded) { // PostPlayHandling calls UpdateShow, which is slow, so we don't need to do it again iPodcastModel.ShowEngine().PostPlayHandling(info);