SQLite
Check-in [cd9efeb3eb]
Not logged in
Overview
SHA1 Hash:cd9efeb3eb28efc6a92904bb426c3a50f95fc936
Date: 2012-10-05 18:38:26
User: drh
Comment:Fix an accidental fork on branch-3.7.9.
Tags And Properties
Changes
hide diffs unified diffs patch

Changes to src/build.c

2680 2680 2681 /* 2681 /* 2682 ** Allocate the index structure. 2682 ** Allocate the index structure. 2683 */ 2683 */ 2684 nName = sqlite3Strlen30(zName); 2684 nName = sqlite3Strlen30(zName); 2685 nCol = pList->nExpr; 2685 nCol = pList->nExpr; 2686 pIndex = sqlite3DbMallocZero(db, 2686 pIndex = sqlite3DbMallocZero(db, 2687 sizeof(Index) + /* Index structure */ | 2687 sizeof(Index) + /* Index structure */ 2688 sizeof(tRowcnt)*(nCol+1) + /* Index.aiRowEst */ | 2688 ROUND8(sizeof(tRowcnt)*(nCol+1)) + /* Index.aiRowEst */ 2689 sizeof(int)*nCol + /* Index.aiColumn */ | 2689 sizeof(char *)*nCol + /* Index.azColl */ 2690 sizeof(char *)*nCol + /* Index.azColl */ | 2690 sizeof(int)*nCol + /* Index.aiColumn */ 2691 sizeof(u8)*nCol + /* Index.aSortOrder */ | 2691 sizeof(u8)*nCol + /* Index.aSortOrder */ 2692 nName + 1 + /* Index.zName */ | 2692 nName + 1 + /* Index.zName */ 2693 nExtra /* Collation sequence names */ | 2693 nExtra /* Collation sequence names */ 2694 ); 2694 ); 2695 if( db->mallocFailed ){ 2695 if( db->mallocFailed ){ 2696 goto exit_create_index; 2696 goto exit_create_index; 2697 } 2697 } 2698 pIndex->aiRowEst = (tRowcnt*)(&pIndex[1]); 2698 pIndex->aiRowEst = (tRowcnt*)(&pIndex[1]); 2699 pIndex->azColl = (char**)(&pIndex->aiRowEst[nCol+1]); | 2699 pIndex->azColl = (char**) > 2700 ((char*)pIndex->aiRowEst + ROUND8(sizeof(tRowcnt)*nCol+1)); > 2701 assert( EIGHT_BYTE_ALIGNMENT(pIndex->aiRowEst) ); > 2702 assert( EIGHT_BYTE_ALIGNMENT(pIndex->azColl) ); 2700 pIndex->aiColumn = (int *)(&pIndex->azColl[nCol]); 2703 pIndex->aiColumn = (int *)(&pIndex->azColl[nCol]); 2701 pIndex->aSortOrder = (u8 *)(&pIndex->aiColumn[nCol]); 2704 pIndex->aSortOrder = (u8 *)(&pIndex->aiColumn[nCol]); 2702 pIndex->zName = (char *)(&pIndex->aSortOrder[nCol]); 2705 pIndex->zName = (char *)(&pIndex->aSortOrder[nCol]); 2703 zExtra = (char *)(&pIndex->zName[nName+1]); 2706 zExtra = (char *)(&pIndex->zName[nName+1]); 2704 memcpy(pIndex->zName, zName, nName+1); 2707 memcpy(pIndex->zName, zName, nName+1); 2705 pIndex->pTable = pTab; 2708 pIndex->pTable = pTab; 2706 pIndex->nColumn = pList->nExpr; 2709 pIndex->nColumn = pList->nExpr;