Roll clang to pick up unsafe_buffer_paths.txt format changes.
The file format was improved in
https://chromium-review.googlesource.com/c/chromium/src/+/5426599
Mark unsafe files on a file-by-file basis by inclusion in this
list. Eventually, this becomes just a list of a few directories
with individual files controlled by pragmas.
Change-Id: Ia14ff315e04617e0258071145be6b55036950a8a
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/118050
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Thomas Sepez <tsepez@google.com>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/DEPS b/DEPS
index 855a409..97e5dee 100644
--- a/DEPS
+++ b/DEPS
@@ -85,7 +85,7 @@
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling clang
# and whatever else without interference from each other.
- 'clang_revision': '6a87853973ed8d24c2e0462fb21ba1f03e53bfed',
+ 'clang_revision': '277a3849ebe4f41beb773614cc4bad839870cfcf',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling code_coverage
# and whatever else without interference from each other.
diff --git a/pdfium_unsafe_buffers_paths.txt b/pdfium_unsafe_buffers_paths.txt
index 8f0506b..a173ea5 100644
--- a/pdfium_unsafe_buffers_paths.txt
+++ b/pdfium_unsafe_buffers_paths.txt
@@ -16,7 +16,226 @@
#
# See `docs/unsafe_buffers.md`.
-core/fxcrt/
-fpdfsdk/formfiller/
-fpdfsdk/pwl/
-fpdfsdk/fpdfxfa/
+# These directories are excluded because they come from outside PDFium and
+# we don't have control over their contents.
+-base/
+-public/
+-samples/
+-skia/
+-testing/
+-third_party
+-tools/
+-v8/
+
+# TODO(tsepez): remove all files in this section.
+-core/fdrm/fx_crypt.cpp
+-core/fdrm/fx_crypt_aes.cpp
+-core/fdrm/fx_crypt_sha.cpp
+-core/fdrm/fx_crypt_unittest.cpp
+-core/fpdfapi/cmaps/fpdf_cmaps.cpp
+-core/fpdfapi/font/cfx_cttgsubtable.cpp
+-core/fpdfapi/font/cpdf_cidfont.cpp
+-core/fpdfapi/font/cpdf_cmap.cpp
+-core/fpdfapi/font/cpdf_cmapparser.cpp
+-core/fpdfapi/font/cpdf_cmapparser_unittest.cpp
+-core/fpdfapi/font/cpdf_font.cpp
+-core/fpdfapi/font/cpdf_fontencoding.cpp
+-core/fpdfapi/font/cpdf_fontencoding.h
+-core/fpdfapi/font/cpdf_simplefont.cpp
+-core/fpdfapi/font/cpdf_truetypefont.cpp
+-core/fpdfapi/font/cpdf_type1font.cpp
+-core/fpdfapi/page/cpdf_colorspace.cpp
+-core/fpdfapi/page/cpdf_colorspace_unittest.cpp
+-core/fpdfapi/page/cpdf_devicecs.cpp
+-core/fpdfapi/page/cpdf_dib.cpp
+-core/fpdfapi/page/cpdf_docpagedata.cpp
+-core/fpdfapi/page/cpdf_image.cpp
+-core/fpdfapi/page/cpdf_indexedcs.cpp
+-core/fpdfapi/page/cpdf_meshstream.cpp
+-core/fpdfapi/page/cpdf_pageobjectholder_unittest.cpp
+-core/fpdfapi/page/cpdf_psengine.cpp
+-core/fpdfapi/page/cpdf_psengine_unittest.cpp
+-core/fpdfapi/page/cpdf_sampledfunc.cpp
+-core/fpdfapi/page/cpdf_streamcontentparser.cpp
+-core/fpdfapi/page/cpdf_streamparser.cpp
+-core/fpdfapi/page/cpdf_textobject.cpp
+-core/fpdfapi/page/cpdf_transferfuncdib.cpp
+-core/fpdfapi/parser/cpdf_array_unittest.cpp
+-core/fpdfapi/parser/cpdf_crypto_handler.cpp
+-core/fpdfapi/parser/cpdf_object_unittest.cpp
+-core/fpdfapi/parser/cpdf_parser.cpp
+-core/fpdfapi/parser/cpdf_parser_unittest.cpp
+-core/fpdfapi/parser/cpdf_security_handler.cpp
+-core/fpdfapi/parser/cpdf_simple_parser_unittest.cpp
+-core/fpdfapi/parser/cpdf_stream_acc.cpp
+-core/fpdfapi/parser/cpdf_syntax_parser_unittest.cpp
+-core/fpdfapi/parser/fpdf_parser_decode.cpp
+-core/fpdfapi/parser/fpdf_parser_decode_unittest.cpp
+-core/fpdfapi/render/charposlist.cpp
+-core/fpdfapi/render/cpdf_docrenderdata.cpp
+-core/fpdfapi/render/cpdf_docrenderdata_unittest.cpp
+-core/fpdfapi/render/cpdf_imagerenderer.cpp
+-core/fpdfapi/render/cpdf_rendershading.cpp
+-core/fpdfapi/render/cpdf_renderstatus.cpp
+-core/fpdfapi/render/cpdf_type3cache.cpp
+-core/fpdfdoc/cpdf_aaction.cpp
+-core/fpdfdoc/cpdf_action.cpp
+-core/fpdfdoc/cpdf_defaultappearance_unittest.cpp
+-core/fpdfdoc/cpdf_filespec.cpp
+-core/fpdfdoc/cpdf_filespec_unittest.cpp
+-core/fpdfdoc/cpdf_formcontrol.cpp
+-core/fpdfdoc/cpdf_pagelabel.cpp
+-core/fpdfdoc/cpvt_section.cpp
+-core/fpdfdoc/cpvt_variabletext.cpp
+-core/fpdftext/cpdf_linkextract_unittest.cpp
+-core/fpdftext/cpdf_textpage.cpp
+-core/fpdftext/cpdf_textpagefind.cpp
+-core/fxcodec/basic/a85_unittest.cpp
+-core/fxcodec/basic/rle_unittest.cpp
+-core/fxcodec/bmp/cfx_bmpdecompressor.cpp
+-core/fxcodec/fax/faxmodule.cpp
+-core/fxcodec/flate/flatemodule.cpp
+-core/fxcodec/flate/flatemodule_unittest.cpp
+-core/fxcodec/fx_codec.cpp
+-core/fxcodec/gif/cfx_gifcontext.cpp
+-core/fxcodec/gif/cfx_gifcontext_unittest.cpp
+-core/fxcodec/gif/lzw_decompressor.cpp
+-core/fxcodec/gif/lzw_decompressor_unittest.cpp
+-core/fxcodec/jbig2/JBig2_ArithDecoder.cpp
+-core/fxcodec/jbig2/JBig2_ArithIntDecoder.cpp
+-core/fxcodec/jbig2/JBig2_Context.cpp
+-core/fxcodec/jbig2/JBig2_GrdProc.cpp
+-core/fxcodec/jbig2/JBig2_GrrdProc.cpp
+-core/fxcodec/jbig2/JBig2_HtrdProc.cpp
+-core/fxcodec/jbig2/JBig2_HuffmanTable.cpp
+-core/fxcodec/jbig2/JBig2_Image.cpp
+-core/fxcodec/jbig2/JBig2_Image.h
+-core/fxcodec/jbig2/JBig2_Image_unittest.cpp
+-core/fxcodec/jbig2/JBig2_PddProc.cpp
+-core/fxcodec/jbig2/JBig2_SddProc.cpp
+-core/fxcodec/jbig2/JBig2_TrdProc.cpp
+-core/fxcodec/jbig2/jbig2_decoder.cpp
+-core/fxcodec/jpeg/jpeg_progressive_decoder.cpp
+-core/fxcodec/jpeg/jpegmodule.cpp
+-core/fxcodec/jpx/cjpx_decoder.cpp
+-core/fxcodec/jpx/jpx_decode_utils.cpp
+-core/fxcodec/jpx/jpx_unittest.cpp
+-core/fxcodec/progressive_decoder.cpp
+-core/fxcodec/progressive_decoder.h
+-core/fxcodec/tiff/tiff_decoder.cpp
+-core/fxge/agg/fx_agg_driver.cpp
+-core/fxge/android/cfpf_skiafontmgr.cpp
+-core/fxge/apple/fx_apple_impl.cpp
+-core/fxge/apple/fx_apple_platform.cpp
+-core/fxge/apple/fx_apple_platform.h
+-core/fxge/apple/fx_quartz_device.cpp
+-core/fxge/apple/fx_quartz_device.h
+-core/fxge/cfx_cliprgn.cpp
+-core/fxge/cfx_face.cpp
+-core/fxge/cfx_folderfontinfo.cpp
+-core/fxge/cfx_font.cpp
+-core/fxge/cfx_fontmapper.cpp
+-core/fxge/cfx_fontmgr.cpp
+-core/fxge/cfx_glyphcache.cpp
+-core/fxge/cfx_path.cpp
+-core/fxge/cfx_renderdevice.cpp
+-core/fxge/dib/blend.cpp
+-core/fxge/dib/cfx_bitmapcomposer.cpp
+-core/fxge/dib/cfx_cmyk_to_srgb.cpp
+-core/fxge/dib/cfx_dibbase.cpp
+-core/fxge/dib/cfx_dibitmap.cpp
+-core/fxge/dib/cfx_dibitmap_unittest.cpp
+-core/fxge/dib/cfx_imagetransformer.cpp
+-core/fxge/dib/cfx_scanlinecompositor.cpp
+-core/fxge/dib/cstretchengine.cpp
+-core/fxge/dib/cstretchengine.h
+-core/fxge/freetype/fx_freetype.cpp
+-core/fxge/linux/fx_linux_impl.cpp
+-core/fxge/skia/cfx_dibbase_skia.cpp
+-core/fxge/skia/fx_skia_device.cpp
+-core/fxge/win32/cfx_psrenderer.cpp
+-core/fxge/win32/cgdi_device_driver.cpp
+-core/fxge/win32/cgdi_plus_ext.cpp
+-core/fxge/win32/cps_printer_driver.cpp
+-core/fxge/win32/cpsoutput.cpp
+-core/fxge/win32/ctext_only_printer_driver.cpp
+-core/fxge/win32/cwin32_platform.cpp
+-fpdfsdk/cpdfsdk_appstream.cpp
+-fpdfsdk/fpdf_annot.cpp
+-fpdfsdk/fpdf_annot_embeddertest.cpp
+-fpdfsdk/fpdf_attachment.cpp
+-fpdfsdk/fpdf_dataavail_embeddertest.cpp
+-fpdfsdk/fpdf_doc.cpp
+-fpdfsdk/fpdf_doc_embeddertest.cpp
+-fpdfsdk/fpdf_editimg.cpp
+-fpdfsdk/fpdf_editpage.cpp
+-fpdfsdk/fpdf_editpage_embeddertest.cpp
+-fpdfsdk/fpdf_edittext.cpp
+-fpdfsdk/fpdf_formfill_embeddertest.cpp
+-fpdfsdk/fpdf_ppo.cpp
+-fpdfsdk/fpdf_ppo_embeddertest.cpp
+-fpdfsdk/fpdf_save_embeddertest.cpp
+-fpdfsdk/fpdf_signature.cpp
+-fpdfsdk/fpdf_structtree_embeddertest.cpp
+-fpdfsdk/fpdf_sysfontinfo_embeddertest.cpp
+-fpdfsdk/fpdf_text_embeddertest.cpp
+-fpdfsdk/fpdf_view.cpp
+-fpdfsdk/fpdf_view_embeddertest.cpp
+-fxbarcode/oned/BC_OneDimWriter.cpp
+-fxbarcode/oned/BC_OnedCodaBarWriter.cpp
+-fxbarcode/oned/BC_OnedCodaBarWriter_unittest.cpp
+-fxbarcode/oned/BC_OnedCode128Writer.cpp
+-fxbarcode/oned/BC_OnedCode128Writer_unittest.cpp
+-fxbarcode/oned/BC_OnedCode39Writer.cpp
+-fxbarcode/oned/BC_OnedCode39Writer_unittest.cpp
+-fxbarcode/oned/BC_OnedEAN13Writer.cpp
+-fxbarcode/oned/BC_OnedEAN13Writer_unittest.cpp
+-fxbarcode/oned/BC_OnedEAN8Writer.cpp
+-fxbarcode/oned/BC_OnedEAN8Writer_unittest.cpp
+-fxbarcode/oned/BC_OnedUPCAWriter_unittest.cpp
+-fxbarcode/pdf417/BC_PDF417.cpp
+-fxbarcode/pdf417/BC_PDF417ErrorCorrection.cpp
+-fxbarcode/pdf417/BC_PDF417HighLevelEncoder.cpp
+-fxbarcode/pdf417/BC_PDF417HighLevelEncoder_unittest.cpp
+-fxbarcode/pdf417/BC_PDF417Writer_unittest.cpp
+-fxbarcode/qrcode/BC_QRCodeWriter_unittest.cpp
+-fxbarcode/qrcode/BC_QRCoderEncoder.cpp
+-fxbarcode/qrcode/BC_QRCoderMatrixUtil.cpp
+-fxbarcode/qrcode/BC_QRCoderVersion.cpp
+-fxjs/cfx_globaldata.cpp
+-fxjs/xfa/cfxjse_formcalc_context.cpp
+-xfa/fde/cfde_texteditengine.cpp
+-xfa/fde/cfde_textout.cpp
+-xfa/fde/cfde_wordbreak_data.cpp
+-xfa/fgas/crt/cfgas_decimal.cpp
+-xfa/fgas/crt/cfgas_stringformatter.cpp
+-xfa/fgas/crt/cfgas_stringformatter_unittest.cpp
+-xfa/fgas/font/cfgas_defaultfontmanager.cpp
+-xfa/fgas/font/cfgas_fontmgr.cpp
+-xfa/fgas/font/cfgas_fontmgr.h
+-xfa/fgas/font/cfgas_pdffontmgr.cpp
+-xfa/fgas/graphics/cfgas_gegraphics.cpp
+-xfa/fgas/graphics/cfgas_geshading.cpp
+-xfa/fgas/graphics/cfgas_geshading.h
+-xfa/fgas/layout/cfgas_char.cpp
+-xfa/fgas/layout/cfgas_rtfbreak.cpp
+-xfa/fgas/layout/cfgas_txtbreak.cpp
+-xfa/fgas/layout/fgas_arabic.cpp
+-xfa/fgas/layout/fgas_linebreak.cpp
+-xfa/fwl/cfwl_monthcalendar.cpp
+-xfa/fwl/theme/cfwl_checkboxtp.cpp
+-xfa/fwl/theme/cfwl_pushbuttontp.cpp
+-xfa/fwl/theme/cfwl_widgettp.cpp
+-xfa/fxfa/cxfa_ffdocview.cpp
+-xfa/fxfa/cxfa_ffwidgethandler.cpp
+-xfa/fxfa/cxfa_textlayout.cpp
+-xfa/fxfa/formcalc/cxfa_fmlexer.cpp
+-xfa/fxfa/formcalc/cxfa_fmlexer_unittest.cpp
+-xfa/fxfa/layout/cxfa_contentlayoutprocessor.cpp
+-xfa/fxfa/parser/cxfa_color.cpp
+-xfa/fxfa/parser/cxfa_localemgr.cpp
+-xfa/fxfa/parser/cxfa_localevalue.cpp
+-xfa/fxfa/parser/cxfa_node.cpp
+-xfa/fxfa/parser/cxfa_xmllocale_unittest.cpp
+-xfa/fxfa/parser/xfa_basic_data.cpp
+-xfa/fxfa/parser/xfa_utils_unittest.cpp