Index: base/shell/explorer/desktop/desktop.cpp =================================================================== --- base/shell/explorer/desktop/desktop.cpp (revision 56092) +++ base/shell/explorer/desktop/desktop.cpp (working copy) @@ -235,8 +235,11 @@ if (minimized.empty()) { EnumWindows(MinimizeDesktopEnumFct, (LPARAM)&minimized); } else { - for(list::const_iterator it=minimized.begin(); it!=minimized.end(); ++it) + for(list::const_reverse_iterator it=minimized.rbegin(); + it!=minimized.rend(); ++it) { ShowWindowAsync(it->first, it->second&WS_MAXIMIZE? SW_MAXIMIZE: SW_RESTORE); + Sleep(20); + } minimized.clear(); }