[PATCH 8/8] Fix infinite loop case for full item range as a first search range

Nikolay Sivov nsivov at codeweavers.com
Fri Aug 20 02:03:25 CDT 2010


---
 dlls/comctl32/listview.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/comctl32/listview.c b/dlls/comctl32/listview.c
index 6dbcf4a..11d8d98 100644
--- a/dlls/comctl32/listview.c
+++ b/dlls/comctl32/listview.c
@@ -1849,8 +1849,9 @@ static INT LISTVIEW_ProcessLetterKeys(LISTVIEW_INFO *infoPtr, WPARAM charCode, L
                 }
             }
 
-            /* found something or second search completed with any result */
-            if (nItem != -1 || endidx != infoPtr->nItemCount)
+            if ( nItem != -1 || /* found something */
+                 endidx != infoPtr->nItemCount || /* second search done */
+                (startidx == 0 && endidx == infoPtr->nItemCount) /* full range for first search */ )
                 break;
         };
     }
-- 
1.5.6.5


--------------020808020201030409050309--



More information about the wine-patches mailing list