]> git.sesse.net Git - vlc/commitdiff
TAB_FIND/TAB_REMOVE: remove inner variable, improve expansion safety
authorRémi Denis-Courmont <remi@remlab.net>
Wed, 6 Feb 2013 18:56:02 +0000 (20:56 +0200)
committerRémi Denis-Courmont <remi@remlab.net>
Wed, 6 Feb 2013 18:56:38 +0000 (20:56 +0200)
include/vlc_arrays.h

index 2b57fdc3d1044e1c538d3f9b5a716413a038ae83..7749140f10f5ce76339559b166d041854bb4a7da 100644 (file)
@@ -103,15 +103,13 @@ static inline void *realloc_down( void *ptr, size_t size )
 #define TAB_APPEND( count, tab, p )             \
     TAB_APPEND_CAST( , count, tab, p )
 
-#define TAB_FIND( count, tab, p, index )        \
+#define TAB_FIND( count, tab, p, idx )          \
   do {                                          \
-    (index) = -1;                               \
-    for( int i = 0; i < (count); i++ )          \
-        if( (tab)[i] == (p) )                   \
-        {                                       \
-            (index) = i;                        \
+    for( (idx) = 0; (idx) < (count); (idx)++ )  \
+        if( (tab)[(idx)] == (p) )               \
             break;                              \
-        }                                       \
+    if( (idx) >= (count) )                      \
+        (idx) = -1;                             \
   } while(0)