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
This commit is contained in:
parent
03c911f29d
commit
b99d633b3f
@ -646,8 +646,12 @@ int TBaseisamfile::_close()
|
|||||||
// TLocalisamfile
|
// 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)
|
TLocalisamfile::TLocalisamfile(int logicnum, bool linkrecinst)
|
||||||
: TBaseisamfile(logicnum, linkrecinst)
|
: TBaseisamfile(logicnum, linkrecinst == TRUE)
|
||||||
{
|
{
|
||||||
if (linkrecinst <= TRUE)
|
if (linkrecinst <= TRUE)
|
||||||
{
|
{
|
||||||
@ -1005,14 +1009,14 @@ int TSystemisamfile::update(TTrec& newrec, bool vis)
|
|||||||
|
|
||||||
dir.get(num(), _lock, _nordir, _sysdirop);
|
dir.get(num(), _lock, _nordir, _sysdirop);
|
||||||
const char p = *dir.name();
|
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();
|
const bool toconvert = is_com ? dir.is_com() : dir.is_firm();
|
||||||
|
|
||||||
int err = NOERR;
|
int err = NOERR;
|
||||||
TTrec oldrec;
|
TTrec oldrec;
|
||||||
|
|
||||||
oldrec.get(num());
|
oldrec.get(num());
|
||||||
const long lev = prefhndl->filelevel();
|
const long lev = prefix().filelevel();
|
||||||
const bool lcf = getlcf(lev);
|
const bool lcf = getlcf(lev);
|
||||||
exec_convapp(lev, TRUE);
|
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);
|
TProgind p(nitems, s, TRUE, TRUE, 70);
|
||||||
TString s1;
|
TString s1;
|
||||||
|
|
||||||
fprintf(f, "[Header]\nVersion=%ld", prefhndl->filelevel());
|
fprintf(f, "[Header]\nVersion=%ld", prefix().filelevel());
|
||||||
for (int k = 0; k < nflds; k++)
|
for (int k = 0; k < nflds; k++)
|
||||||
{
|
{
|
||||||
if ((k % 10) == 0) fprintf(f, "\nFields=");
|
if ((k % 10) == 0) fprintf(f, "\nFields=");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user