From b99d633b3f6e2c5c1c5719c521aed796be420e95 Mon Sep 17 00:00:00 2001 From: guy Date: Wed, 22 Feb 1995 14:21:34 +0000 Subject: [PATCH] Corretta creazione file temporanei: non devono linkare la recinst del file isam di base git-svn-id: svn://10.65.10.50/trunk@1026 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- include/isam.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/include/isam.cpp b/include/isam.cpp index b1c23e404..c84ef2cd1 100755 --- a/include/isam.cpp +++ b/include/isam.cpp @@ -646,8 +646,12 @@ int TBaseisamfile::_close() // TLocalisamfile /////////////////////////////////////////////////////////// +// Attenzione linkrecinst puo' valere 0, 1, 2. +// Se vale 2 significa che si sta costruendo un file temporaneo +// per cui linkrecinst va' considerato FALSE + TLocalisamfile::TLocalisamfile(int logicnum, bool linkrecinst) -: TBaseisamfile(logicnum, linkrecinst) +: TBaseisamfile(logicnum, linkrecinst == TRUE) { if (linkrecinst <= TRUE) { @@ -1005,14 +1009,14 @@ int TSystemisamfile::update(TTrec& newrec, bool vis) dir.get(num(), _lock, _nordir, _sysdirop); const char p = *dir.name(); - const bool is_com = prefhndl->is_com(); + const bool is_com = prefix().is_com(); const bool toconvert = is_com ? dir.is_com() : dir.is_firm(); int err = NOERR; TTrec oldrec; oldrec.get(num()); - const long lev = prefhndl->filelevel(); + const long lev = prefix().filelevel(); const bool lcf = getlcf(lev); exec_convapp(lev, TRUE); @@ -1324,7 +1328,7 @@ int TSystemisamfile::dump(const char* to, int nkey, char fs, char fd, char rs, b TProgind p(nitems, s, TRUE, TRUE, 70); TString s1; - fprintf(f, "[Header]\nVersion=%ld", prefhndl->filelevel()); + fprintf(f, "[Header]\nVersion=%ld", prefix().filelevel()); for (int k = 0; k < nflds; k++) { if ((k % 10) == 0) fprintf(f, "\nFields=");