Browse Source

* fcl-db/dbase: let dbf.pas apply default blocklength=64 (instead of 512) for *foxpro

git-svn-id: trunk@24210 -
reiniero 12 years ago
parent
commit
36cb560e0d
1 changed files with 5 additions and 1 deletions
  1. 5 1
      packages/fcl-db/src/dbase/dbf.pas

+ 5 - 1
packages/fcl-db/src/dbase/dbf.pas

@@ -1518,7 +1518,11 @@ begin
       FDbfFile.DbfVersion := TableLevelToDbfVersion(FTableLevel);
       FDbfFile.DbfVersion := TableLevelToDbfVersion(FTableLevel);
       FDbfFile.FileLangID := FLanguageID;
       FDbfFile.FileLangID := FLanguageID;
       FDbfFile.Open;
       FDbfFile.Open;
-      FDbfFile.FinishCreate(ADbfFieldDefs, 512);
+      // Default memo blocklength for FoxPro/VisualFoxpro is 64 (not 512 as specs say)
+      if FDbfFile.DbfVersion in [xFoxPro,xVisualFoxPro] then
+        FDbfFile.FinishCreate(ADbfFieldDefs, 64)
+      else
+        FDbfFile.FinishCreate(ADbfFieldDefs, 512);
 
 
       // if creating memory table, copy stream pointer
       // if creating memory table, copy stream pointer
       if FStorage = stoMemory then
       if FStorage = stoMemory then