Hack together MSAN build.
- Build our own: freetype.
- Avoid using: fontconfig, expat, GPU drivers.
- Lie about safety: libjpeg (only from src/images... need to in src/codec?)
To run:
$ tools/xsan_build memory dm
$ out/Debug/dm -v --match ~Codec ~BlurLargeImage ~FontMgrAndroidParser
Notes:
- Codec triggers issues in piex.
- BlurLargeImage probably has bugs in the GM only.
- FontMgrAndroidParser uses expat.
BUG=skia:4550
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1665823002
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/1665823002
diff --git a/src/images/SkImageDecoder_libjpeg.cpp b/src/images/SkImageDecoder_libjpeg.cpp
index 6a032fd..6a3ae87 100644
--- a/src/images/SkImageDecoder_libjpeg.cpp
+++ b/src/images/SkImageDecoder_libjpeg.cpp
@@ -11,6 +11,7 @@
#include "SkJpegUtility.h"
#include "SkColorPriv.h"
#include "SkDither.h"
+#include "SkMSAN.h"
#include "SkScaledBitmapSampler.h"
#include "SkStream.h"
#include "SkTemplates.h"
@@ -524,6 +525,9 @@
convert_CMYK_to_RGB(srcRow, cinfo.output_width);
}
+ sk_msan_mark_initialized(srcRow, srcRow + cinfo.output_width * srcBytesPerPixel,
+ "skbug.com/4550");
+
sampler.next(srcRow);
if (bm->height() - 1 == y) {
// we're done