SkSampler* SkIcoCodec::getSampler(bool createIfNecessary) {
 if (fCurrScanlineCodec) {
 SkASSERT(!fCurrIncrementalCodec);
 return fCurrScanlineCodec->getSampler(createIfNecessary);
 }

 if (fCurrIncrementalCodec) {
 return fCurrIncrementalCodec->getSampler(createIfNecessary);
 }

 return nullptr;
}

The product writes data past the end, or before the beginning, of the intended buffer.