Author: anevilyak Date: 2011-01-22 20:06:15 +0100 (Sat, 22 Jan 2011) New Revision: 40266 Changeset: http://dev.haiku-os.org/changeset/40266 Modified: haiku/trunk/src/kits/tracker/StatusWindow.cpp Log: CID 10361: Slight code simplification to remove superfluous for loop. Modified: haiku/trunk/src/kits/tracker/StatusWindow.cpp =================================================================== --- haiku/trunk/src/kits/tracker/StatusWindow.cpp 2011-01-22 18:39:16 UTC (rev 40265) +++ haiku/trunk/src/kits/tracker/StatusWindow.cpp 2011-01-22 19:06:15 UTC (rev 40266) @@ -356,38 +356,29 @@ BStatusView* view = NULL; - for (;;) { - - AutoLock<BWindow> lock(this); - // check if cancel or pause hit - for (int32 index = fViewList.CountItems() - 1; index >= 0; index--) { - - view = fViewList.ItemAt(index); - if (view && view->Thread() == thread) { - isPaused = view->IsPaused(); - wasCanceled = view->WasCanceled(); - break; - } + AutoLock<BWindow> lock(this); + // check if cancel or pause hit + for (int32 index = fViewList.CountItems() - 1; index >= 0; index--) { + view = fViewList.ItemAt(index); + if (view && view->Thread() == thread) { + isPaused = view->IsPaused(); + wasCanceled = view->WasCanceled(); + break; } - lock.Unlock(); + } - if (wasCanceled || !isPaused) - break; + if (wasCanceled || !isPaused) + return wasCanceled; - if (isPaused && view != NULL) { - AutoLock<BWindow> lock(this); - // say we are paused - view->Invalidate(); - lock.Unlock(); + if (isPaused && view != NULL) { + // say we are paused + view->Invalidate(); - ASSERT(find_thread(NULL) == view->Thread()); + ASSERT(find_thread(NULL) == view->Thread()); - // and suspend ourselves - // we will get resumend from BStatusView::MessageReceived - suspend_thread(view->Thread()); - } - break; - + // and suspend ourselves + // we will get resumed from BStatusView::MessageReceived + suspend_thread(view->Thread()); } return wasCanceled;