Opened 13 years ago

Closed 13 years ago

#811 closed defect (fixed)

SHP provider: file pointer overflow in the case of large DBF files

Reported by: danstoica Owned by: gregboone
Priority: major Milestone: 3.6.0
Component: FDO API Version: 3.6.0
Severity: 2 Keywords:
Cc: External ID:

Description

The following code is faulty for large DBF files (as number of records) and large record size:

SetFilePointer64((FdoInt64)(m_nRecordStart + (nRecord * m_DBFHeader.wRecordSize)))

All the integers involved in the file pointer values are Int32 thus the result is an int32 (max_int= 2147483647). In the case of recordNumber = 700000 a record size of 3070 will be enough to result into a negative number for the file pointer.

Change History (1)

comment:1 by danstoica, 13 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.