]> granicus.if.org Git - php/commitdiff
Fix for bug 19727. dBase5 (at least for windows) seems to allow 1024 fields
authorVlad Krupin <vlad@php.net>
Fri, 13 Dec 2002 03:09:52 +0000 (03:09 +0000)
committerVlad Krupin <vlad@php.net>
Fri, 13 Dec 2002 03:09:52 +0000 (03:09 +0000)
ext/dbase/dbf_head.c

index e73d134907d11f9df74a8ab922550462fade4ba0..afaa0d724d7230c72f742a583014981cf55906be 100644 (file)
@@ -43,13 +43,13 @@ dbhead_t *get_dbf_head(int fd)
                dbhead.dbh_date[DBH_DATE_DAY]);
 
        /* malloc enough memory for the maximum number of fields:
-          32 * 254 = 8128 bytes */
-       tdbf = (dbfield_t *)malloc(sizeof(dbfield_t)*254);
+          32 * 1024 = 32K dBase5 (for Win) seems to allow that many */
+       tdbf = (dbfield_t *)malloc(sizeof(dbfield_t)*1024);
        
        offset = 1;
        nfields = 0;
        gf_retval = 0;
-       for (cur_f = tdbf; gf_retval < 2 && nfields < 254; cur_f++) {
+       for (cur_f = tdbf; gf_retval < 2 && nfields < 1024; cur_f++) {
                gf_retval = get_dbf_field(dbh, cur_f);
 
                if (gf_retval < 0) {