Diff
Not logged in

Differences From Artifact [60f18475c3]:

To Artifact [2bd2b4c6a0]:


11839
11840
11841
11842
11843
11844
11845
11846

11847
11848
11849
11850
11851
11852
11853
11839
11840
11841
11842
11843
11844
11845

11846
11847
11848
11849
11850
11851
11852
11853







-
+







** result of context object pCtx.
*/
static void dbdataValue(
  sqlite3_context *pCtx, 
  u32 enc,
  int eType, 
  u8 *pData,
  int nData
  sqlite3_int64 nData
){
  if( eType>=0 && dbdataValueBytes(eType)<=nData ){
    switch( eType ){
      case 0: 
      case 10: 
      case 11: 
        sqlite3_result_null(pCtx);
12275
12276
12277
12278
12279
12280
12281
12282

12283
12284
12285
12286
12287
12288
12289
12275
12276
12277
12278
12279
12280
12281

12282
12283
12284
12285
12286
12287
12288
12289







-
+







        break;
      case DBDATA_COLUMN_FIELD:
        sqlite3_result_int(ctx, pCsr->iField);
        break;
      case DBDATA_COLUMN_VALUE: {
        if( pCsr->iField<0 ){
          sqlite3_result_int64(ctx, pCsr->iIntkey);
        }else{
        }else if( &pCsr->pRec[pCsr->nRec] >= pCsr->pPtr ){
          sqlite3_int64 iType;
          dbdataGetVarintU32(pCsr->pHdrPtr, &iType);
          dbdataValue(
              ctx, pCsr->enc, iType, pCsr->pPtr, 
              &pCsr->pRec[pCsr->nRec] - pCsr->pPtr
          );
        }