Lines Matching refs:pChange
775 static int fuzzSelectChange(FuzzChangeset *pParse, FuzzChange *pChange){ in fuzzSelectChange() argument
778 memset(pChange, 0, sizeof(FuzzChange)); in fuzzSelectChange()
779 pChange->eType = fuzzRandomInt(FUZZ_COLUMN_DEL) + 1; in fuzzSelectChange()
781 assert( pChange->eType==FUZZ_VALUE_SUB in fuzzSelectChange()
782 || pChange->eType==FUZZ_VALUE_MOD in fuzzSelectChange()
783 || pChange->eType==FUZZ_VALUE_RND in fuzzSelectChange()
784 || pChange->eType==FUZZ_CHANGE_DUP in fuzzSelectChange()
785 || pChange->eType==FUZZ_CHANGE_DEL in fuzzSelectChange()
786 || pChange->eType==FUZZ_CHANGE_TYPE in fuzzSelectChange()
787 || pChange->eType==FUZZ_CHANGE_FIELD in fuzzSelectChange()
788 || pChange->eType==FUZZ_CHANGE_INDIRECT in fuzzSelectChange()
789 || pChange->eType==FUZZ_GROUP_DUP in fuzzSelectChange()
790 || pChange->eType==FUZZ_GROUP_DEL in fuzzSelectChange()
791 || pChange->eType==FUZZ_GROUP_SWAP in fuzzSelectChange()
792 || pChange->eType==FUZZ_COLUMN_ADD in fuzzSelectChange()
793 || pChange->eType==FUZZ_COLUMN_ADDPK in fuzzSelectChange()
794 || pChange->eType==FUZZ_COLUMN_DEL in fuzzSelectChange()
797 pChange->iGroup = fuzzRandomInt(pParse->nGroup); in fuzzSelectChange()
798 pChange->iChange = fuzzRandomInt(pParse->nChange); in fuzzSelectChange()
799 if( pChange->eType==FUZZ_CHANGE_FIELD ){ in fuzzSelectChange()
801 pChange->iChange = fuzzRandomInt(pParse->nUpdate); in fuzzSelectChange()
804 pChange->iDelete = -1; in fuzzSelectChange()
805 if( pChange->eType==FUZZ_COLUMN_DEL ){ in fuzzSelectChange()
806 FuzzChangesetGroup *pGrp = pParse->apGroup[pChange->iGroup]; in fuzzSelectChange()
808 pChange->iDelete = fuzzRandomInt(pGrp->nCol); in fuzzSelectChange()
810 if( pGrp->aPK[i] && pChange->iDelete!=i ) break; in fuzzSelectChange()
815 if( pChange->eType==FUZZ_GROUP_SWAP ){ in fuzzSelectChange()
817 int iGrp = pChange->iGroup; in fuzzSelectChange()
819 while( iGrp==pChange->iGroup ){ in fuzzSelectChange()
822 pGrp = pParse->apGroup[pChange->iGroup]; in fuzzSelectChange()
823 pParse->apGroup[pChange->iGroup] = pParse->apGroup[iGrp]; in fuzzSelectChange()
827 if( pChange->eType==FUZZ_VALUE_SUB in fuzzSelectChange()
828 || pChange->eType==FUZZ_VALUE_MOD in fuzzSelectChange()
829 || pChange->eType==FUZZ_VALUE_RND in fuzzSelectChange()
832 pChange->pSub1 = pParse->apVal[iSub]; in fuzzSelectChange()
833 if( pChange->eType==FUZZ_VALUE_SUB ){ in fuzzSelectChange()
835 pChange->pSub2 = pParse->apVal[iSub]; in fuzzSelectChange()
837 pChange->pSub2 = pChange->aSub; in fuzzSelectChange()
840 if( pChange->eType==FUZZ_VALUE_RND ){ in fuzzSelectChange()
841 pChange->aSub[0] = (u8)(fuzzRandomInt(5) + 1); in fuzzSelectChange()
842 switch( pChange->aSub[0] ){ in fuzzSelectChange()
845 fuzzPutU64(&pChange->aSub[1], iVal); in fuzzSelectChange()
854 fuzzPutU64(&pChange->aSub[1], iVal1); in fuzzSelectChange()
861 pChange->aSub[1] = (u8)nByte; in fuzzSelectChange()
862 fuzzRandomBlob(nByte, &pChange->aSub[2]); in fuzzSelectChange()
863 if( pChange->aSub[0]==0x03 ){ in fuzzSelectChange()
866 pChange->aSub[2+i] &= 0x7F; in fuzzSelectChange()
873 if( pChange->eType==FUZZ_VALUE_MOD ){ in fuzzSelectChange()
876 fuzzChangeSize(pChange->pSub1, &sz); in fuzzSelectChange()
877 memcpy(pChange->aSub, pChange->pSub1, sz); in fuzzSelectChange()
878 switch( pChange->aSub[0] ){ in fuzzSelectChange()
887 int iFirst = 1 + fuzzGetVarint(&pChange->aSub[1], &nByte); in fuzzSelectChange()
896 u8 mask = (1 << fuzzRandomInt(8 - (pChange->aSub[0]==0x03))); in fuzzSelectChange()
897 pChange->aSub[iMod] ^= mask; in fuzzSelectChange()