]> git.sur5r.net Git - openldap/commitdiff
explain mdl_midl_sort() istack size
authorHallvard Furuseth <hallvard@openldap.org>
Sat, 10 Sep 2011 08:11:55 +0000 (10:11 +0200)
committerHallvard Furuseth <hallvard@openldap.org>
Sat, 10 Sep 2011 20:49:34 +0000 (22:49 +0200)
libraries/libmdb/midl.c

index 2aee4311ea230454d38ffc1bea10b4efc2ad9d38..7a7b59c7c0e053cb752defb001c2a3e253fd1ea2 100644 (file)
@@ -15,6 +15,7 @@
  * <http://www.OpenLDAP.org/license.html>.
  */
 
+#include <limits.h>
 #include <string.h>
 #include <sys/types.h>
 #include <assert.h>
@@ -134,7 +135,8 @@ int mdb_midl_append( IDL ids, ID id )
 void
 mdb_midl_sort( ID *ids )
 {
-       int istack[16*sizeof(int)];
+       /* Max possible depth of int-indexed tree * 2 items/level */
+       int istack[sizeof(int)*CHAR_BIT * 2];
        int i,j,k,l,ir,jstack;
        ID a, itmp;