Valgrind reports two issues that are only present when transform skip is on.
The relevant valgrind reports are below.
==6808== Invalid read of size 1
==6808== at 0x456A58: TComDataCU::getTransformSkip(unsigned int, TextType) (TComDataCU.h:336)
==6808== by 0x45FF1A: TEncSearch::xRecurIntraChromaCodingQT(TComDataCU*, unsigned int, unsigned int, TComYuv*, TComYuv*, TComYuv*, unsigned int&) (TEncSearch.c pp:2186)
==6808== by 0x460697: TEncSearch::xRecurIntraChromaCodingQT(TComDataCU*, unsigned int, unsigned int, TComYuv*, TComYuv*, TComYuv*, unsigned int&) (TEncSearch.c pp:2347)
==6808== by 0x460697: TEncSearch::xRecurIntraChromaCodingQT(TComDataCU*, unsigned int, unsigned int, TComYuv*, TComYuv*, TComYuv*, unsigned int&) (TEncSearch.c pp:2347)
==6808== by 0x462A2F: TEncSearch::estIntraPredChromaQT(TComDataCU*, TComYuv*, TComYuv*, TComYuv*, TComYuv*, unsigned int) (TEncSearch.cpp:2839)
==6808== by 0x43C9FB: TEncCu::xCheckRDCostIntra(TComDataCU*&, TComDataCU*&, PartSize) (TEncCu.cpp:1431)
==6808== by 0x43942D: TEncCu::xCompressCU(TComDataCU*&, TComDataCU*&, unsigned int, PartSize) (TEncCu.cpp:707)
==6808== by 0x43A052: TEncCu::xCompressCU(TComDataCU*&, TComDataCU*&, unsigned int, PartSize) (TEncCu.cpp:856)
==6808== by 0x43A052: TEncCu::xCompressCU(TComDataCU*&, TComDataCU*&, unsigned int, PartSize) (TEncCu.cpp:856)
==6808== by 0x437C4E: TEncCu::compressCU(TComDataCU*&) (TEncCu.cpp:235)
==6808== by 0x47662C: TEncSlice::compressSlice(TComPic*&) (TEncSlice.cpp:908)
==6808== by 0x4441EC: TEncGOP::compressGOP(int, int, TComList<TComPic*>&, TComList<TComPicYuv*>&, std::list<AccessUnit, std::allocator<AccessUnit> >&) (TEncGOP .cpp:581)
==6808== Address 0x60479b0 is 0 bytes after a block of size 16 alloc'd
==6808== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==6808== by 0x485130: TComDataCU::create(unsigned int, unsigned int, unsigned int, bool, int, bool) (TComDataCU.cpp:166)
==6808== by 0x436DD2: TEncCu::create(unsigned char, unsigned int, unsigned int) (TEncCu.cpp:83)
==6808== by 0x41D380: TEncTop::create() (TEncTop.cpp:97)
==6808== by 0x4184DB: TAppEncTop::xCreateLib() (TAppEncTop.cpp:285)
==6808== by 0x418635: TAppEncTop::encode() (TAppEncTop.cpp:329)
==6808== by 0x406CC9: main (encmain.cpp:75)
==6808== Invalid read of size 1
==6808== at 0x4C26040: memcpy (mc_replace_strmem.c:497)
==6808== by 0x45E9C2: TEncSearch::xLoadIntraResultQT(TComDataCU*, unsigned int, unsigned int, bool) (TEncSearch.cpp:1909)
==6808== by 0x45C81E: TEncSearch::xRecurIntraCodingQT(TComDataCU*, unsigned int, unsigned int, bool, TComYuv*, TComYuv*, TComYuv*, unsigned int&, unsigned int& , bool, double&) (TEncSearch.cpp:1533)
==6808== by 0x4619DA: TEncSearch::estIntraPredQT(TComDataCU*, TComYuv*, TComYuv*, TComYuv*, TComYuv*, unsigned int&, bool) (TEncSearch.cpp:2605)
==6808== by 0x43C911: TEncCu::xCheckRDCostIntra(TComDataCU*&, TComDataCU*&, PartSize) (TEncCu.cpp:1427)
==6808== by 0x4394E5: TEncCu::xCompressCU(TComDataCU*&, TComDataCU*&, unsigned int, PartSize) (TEncCu.cpp:713)
==6808== by 0x43A052: TEncCu::xCompressCU(TComDataCU*&, TComDataCU*&, unsigned int, PartSize) (TEncCu.cpp:856)
==6808== by 0x43A052: TEncCu::xCompressCU(TComDataCU*&, TComDataCU*&, unsigned int, PartSize) (TEncCu.cpp:856)
==6808== by 0x43A052: TEncCu::xCompressCU(TComDataCU*&, TComDataCU*&, unsigned int, PartSize) (TEncCu.cpp:856)
==6808== by 0x437C4E: TEncCu::compressCU(TComDataCU*&) (TEncCu.cpp:235)
==6808== by 0x47662C: TEncSlice::compressSlice(TComPic*&) (TEncSlice.cpp:908)
==6808== by 0x4441EC: TEncGOP::compressGOP(int, int, TComList<TComPic*>&, TComList<TComPicYuv*>&, std::list<AccessUnit, std::allocator<AccessUnit> >&) (TEncGOP .cpp:581)
==6808== Address 0x664f140 is 0 bytes after a block of size 64 alloc'd
==6808== at 0x4C24A72: operator new[](unsigned long) (vg_replace_malloc.c:305)
==6808== by 0x45937F: TEncSearch::init(TEncCfg*, TComTrQuant*, int, int, int, int, TEncEntropy*, TComRdCost*, TEncSbac*, TEncSbac*) (TEncSearch.cpp:275)
==6808== by 0x41EBDB: TEncTop::init() (TEncTop.cpp:342)
==6808== by 0x418545: TAppEncTop::xInitLib() (TAppEncTop.cpp:300)
==6808== by 0x418644: TAppEncTop::encode() (TAppEncTop.cpp:330)
==6808== by 0x406CC9: main (encmain.cpp:75)
The patch is attached. No change to the results under CTC.