]> granicus.if.org Git - php/commitdiff
Fixed bug #42261 (Incorrect lengths for date and boolean data types)
authorIlia Alshanetsky <iliaa@php.net>
Sun, 18 Nov 2007 14:18:30 +0000 (14:18 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Sun, 18 Nov 2007 14:18:30 +0000 (14:18 +0000)
ext/dbase/dbf_head.c

index 62296bd5e9395b1ce3eb1ad1231af6993cf00324..010fccf87b7fd9c0c061459efbe5c6ae373e205d 100644 (file)
@@ -160,6 +160,9 @@ int get_dbf_field(dbhead_t *dbh, dbfield_t *dbf)
             case 'D':
                dbf->db_flen = 8;
                break;
+           case 'L':
+               dbf->db_flen = 1;
+               break;
            default:
                dbf->db_flen = get_short(dbfield.dbf_flen);
                break;
@@ -195,6 +198,12 @@ int put_dbf_field(dbhead_t *dbh, dbfield_t *dbf)
                dbfield.dbf_flen[0] = dbf->db_flen;
                dbfield.dbf_flen[1] = dbf->db_fdc;
                break;
+           case 'D':
+               dbf->db_flen = 8;
+               break;
+           case 'L':
+               dbf->db_flen = 1;
+               break;
            default:
                put_short(dbfield.dbf_flen, dbf->db_flen);
        }