Commit aa107ef3 authored by Olivier Bertrand's avatar Olivier Bertrand

- FIX assert failure when sorting JSON tables

modified:
  storage/connect/tabjson.cpp
  storage/connect/tabjson.h
parent e027f5e8
...@@ -117,7 +117,8 @@ TDBJSN::TDBJSN(PJDEF tdp, PTXF txfp) : TDBDOS(tdp, txfp) ...@@ -117,7 +117,8 @@ TDBJSN::TDBJSN(PJDEF tdp, PTXF txfp) : TDBDOS(tdp, txfp)
Jmode = tdp->Jmode; Jmode = tdp->Jmode;
Xcol = tdp->Xcol; Xcol = tdp->Xcol;
Fpos = -1; Fpos = -1;
Spos = N = 0; //Spos = 0;
N = 0;
Limit = tdp->Limit; Limit = tdp->Limit;
NextSame = 0; NextSame = 0;
SameRow = 0; SameRow = 0;
...@@ -134,7 +135,7 @@ TDBJSN::TDBJSN(TDBJSN *tdbp) : TDBDOS(NULL, tdbp) ...@@ -134,7 +135,7 @@ TDBJSN::TDBJSN(TDBJSN *tdbp) : TDBDOS(NULL, tdbp)
Jmode = tdbp->Jmode; Jmode = tdbp->Jmode;
Xcol = tdbp->Xcol; Xcol = tdbp->Xcol;
Fpos = tdbp->Fpos; Fpos = tdbp->Fpos;
Spos = tdbp->Spos; //Spos = tdbp->Spos;
N = tdbp->N; N = tdbp->N;
Limit = tdbp->Limit; Limit = tdbp->Limit;
NextSame = tdbp->NextSame; NextSame = tdbp->NextSame;
...@@ -222,7 +223,7 @@ bool TDBJSN::OpenDB(PGLOBAL g) ...@@ -222,7 +223,7 @@ bool TDBJSN::OpenDB(PGLOBAL g)
/* Table already open replace it at its beginning. */ /* Table already open replace it at its beginning. */
/*******************************************************************/ /*******************************************************************/
Fpos= -1; Fpos= -1;
Spos = 0; // Spos = 0;
NextSame = 0; NextSame = 0;
SameRow = 0; SameRow = 0;
} else { } else {
...@@ -1299,7 +1300,6 @@ bool TDBJSON::OpenDB(PGLOBAL g) ...@@ -1299,7 +1300,6 @@ bool TDBJSON::OpenDB(PGLOBAL g)
/* Table already open replace it at its beginning. */ /* Table already open replace it at its beginning. */
/*******************************************************************/ /*******************************************************************/
Fpos= -1; Fpos= -1;
Spos = 0;
NextSame = false; NextSame = false;
SameRow = 0; SameRow = 0;
return false; return false;
......
...@@ -94,7 +94,7 @@ class TDBJSN : public TDBDOS { ...@@ -94,7 +94,7 @@ class TDBJSN : public TDBDOS {
JMODE Jmode; // MODE_OBJECT by default JMODE Jmode; // MODE_OBJECT by default
char *Xcol; // Name of expandable column char *Xcol; // Name of expandable column
int Fpos; // The current row index int Fpos; // The current row index
int Spos; // DELETE start index //int Spos; // DELETE start index
int N; // The current Rownum int N; // The current Rownum
int Limit; // Limit of multiple values int Limit; // Limit of multiple values
int Pretty; // Depends on file structure int Pretty; // Depends on file structure
...@@ -175,6 +175,9 @@ class TDBJSON : public TDBJSN { ...@@ -175,6 +175,9 @@ class TDBJSON : public TDBJSN {
virtual int GetMaxSize(PGLOBAL g); virtual int GetMaxSize(PGLOBAL g);
virtual void ResetSize(void); virtual void ResetSize(void);
virtual int GetRecpos(void) {return Fpos;} virtual int GetRecpos(void) {return Fpos;}
virtual int GetProgCur(void) {return N;}
virtual bool SetRecpos(PGLOBAL g, int recpos)
{Fpos = recpos - 1; return false;}
virtual bool OpenDB(PGLOBAL g); virtual bool OpenDB(PGLOBAL g);
virtual int ReadDB(PGLOBAL g); virtual int ReadDB(PGLOBAL g);
virtual bool PrepareWriting(PGLOBAL g) {return false;} virtual bool PrepareWriting(PGLOBAL g) {return false;}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment