ID:               42261
 User updated by:  roberto at spadim dot com dot br
 Reported By:      roberto at spadim dot com dot br
-Status:           Closed
+Status:           Open
 Bug Type:         dBase related
 Operating System: any
 PHP Version:      5.2.4RC1
 New Comment:

hello, the same error occur now for logic data (boolean)

    [0] => Array
        (
            [name] => SUSPENSO
            [type] => boolean
            [length] => 34817  <========= should be 1
            [precision] => 0
            [format] => %34817s
            [offset] => 1
        )

    [1] => Array
        (
            [name] => COD_CAD
            [type] => number
            [length] => 9
            [precision] => 0
:
....


Previous Comments:
------------------------------------------------------------------------

[2007-08-10 00:30:11] [EMAIL PROTECTED]

This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.



------------------------------------------------------------------------

[2007-08-09 22:57:45] spadim at spadim dot com dot br

this could be the same problem of bug #27470

------------------------------------------------------------------------

[2007-08-09 20:01:15] roberto at spadim dot com dot br

an dbf file could be get from here: www.spadim.com.br/dbf.dbf

------------------------------------------------------------------------

[2007-08-09 19:26:14] roberto at spadim dot com dot br

an dbf file could be get from here: www.spadim.com.br/dbf.dbf

------------------------------------------------------------------------

[2007-08-09 19:04:42] roberto at spadim dot com dot br

Description:
------------
sometimes i get 520 size of date field, that's wrong since i can open
files on clipper
i changed source to set field length to 8 and precision to 0 when type
of field is 'D' and it's work, please checkit

Reproduce code:
---------------
some dbf files have problem

Expected result:
----------------
header information of date always be 8 length

Actual result:
--------------
520 length in some cases
check what i do: dbf_head.c
line ~160

        switch (dbf->db_type) {
            case 'N':
            case 'F':
                dbf->db_flen = dbfield.dbf_flen[0];
                dbf->db_fdc = dbfield.dbf_flen[1];
                break;
=>            case 'D':
=>                dbf->db_flen = 8;
=>                break;
            default:
                dbf->db_flen = get_short(dbfield.dbf_flen);
                break;
        }



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=42261&edit=1

Reply via email to