summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/fdrm/crypto/fx_crypt_unittest.cpp2
-rw-r--r--core/fpdfapi/cmaps/CNS1/cmaps_cns1.cpp1
-rw-r--r--core/fpdfapi/cmaps/GB1/cmaps_gb1.cpp1
-rw-r--r--core/fpdfapi/cmaps/Japan1/cmaps_japan1.cpp1
-rw-r--r--core/fpdfapi/cmaps/Korea1/cmaps_korea1.cpp1
-rw-r--r--core/fpdfapi/cpdf_modulemgr.h2
-rw-r--r--core/fpdfapi/edit/cpdf_creator.h2
-rw-r--r--core/fpdfapi/edit/cpdf_pagecontentgenerator.h2
-rw-r--r--core/fpdfapi/font/cfx_cttgsubtable.h1
-rw-r--r--core/fpdfapi/font/cpdf_cmap.h1
-rw-r--r--core/fpdfapi/font/cpdf_cmapparser.h1
-rw-r--r--core/fpdfapi/font/cpdf_fontglobals.h1
-rw-r--r--core/fpdfapi/font/cpdf_type3char.h1
-rw-r--r--core/fpdfapi/page/cpdf_clippath.h1
-rw-r--r--core/fpdfapi/page/cpdf_colorstate.h1
-rw-r--r--core/fpdfapi/page/cpdf_contentmark.h1
-rw-r--r--core/fpdfapi/page/cpdf_generalstate.h2
-rw-r--r--core/fpdfapi/page/cpdf_image.cpp1
-rw-r--r--core/fpdfapi/page/cpdf_page.h1
-rw-r--r--core/fpdfapi/page/cpdf_pageobjectholder.h1
-rw-r--r--core/fpdfapi/page/cpdf_sampledfunc.cpp1
-rw-r--r--core/fpdfapi/page/cpdf_textstate.h1
-rw-r--r--core/fpdfapi/parser/cfdf_document.h2
-rw-r--r--core/fpdfapi/parser/cpdf_array.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_array.h1
-rw-r--r--core/fpdfapi/parser/cpdf_boolean.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_data_avail.h1
-rw-r--r--core/fpdfapi/parser/cpdf_dictionary.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_document.h1
-rw-r--r--core/fpdfapi/parser/cpdf_name.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_null.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_number.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_object.h2
-rw-r--r--core/fpdfapi/parser/cpdf_object_unittest.cpp14
-rw-r--r--core/fpdfapi/parser/cpdf_parser.h4
-rw-r--r--core/fpdfapi/parser/cpdf_read_validator.h1
-rw-r--r--core/fpdfapi/parser/cpdf_reference.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_simple_parser_unittest.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_stream.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_stream.h2
-rw-r--r--core/fpdfapi/parser/cpdf_string.cpp1
-rw-r--r--core/fpdfapi/parser/cpdf_syntax_parser.h1
-rw-r--r--core/fpdfapi/parser/fpdf_parser_decode.h2
-rw-r--r--core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp1
-rw-r--r--core/fpdfapi/parser/fpdf_parser_utility.cpp1
-rw-r--r--core/fpdfapi/parser/fpdf_parser_utility.h2
-rw-r--r--core/fpdfapi/render/cpdf_imageloader.cpp1
-rw-r--r--core/fpdfapi/render/cpdf_imageloader.h2
-rw-r--r--core/fpdfapi/render/cpdf_rendercontext.h2
-rw-r--r--core/fpdfdoc/cpdf_formfield.h1
-rw-r--r--core/fpdfdoc/ctypeset.h1
-rw-r--r--core/fpdftext/cpdf_linkextract.h1
-rw-r--r--core/fxcodec/codec/ccodec_jbig2module.h2
-rw-r--r--core/fxcodec/codec/ccodec_tiffmodule.cpp1
-rw-r--r--core/fxcodec/codec/ccodec_tiffmodule.h1
-rw-r--r--core/fxcodec/codec/fx_codec_progress.cpp1
-rw-r--r--core/fxcodec/fx_codec.h1
-rw-r--r--core/fxcodec/jbig2/JBig2_ArithDecoder.cpp2
-rw-r--r--core/fxcodec/jbig2/JBig2_ArithIntDecoder.cpp2
-rw-r--r--core/fxcodec/jbig2/JBig2_BitStream.h1
-rw-r--r--core/fxcodec/jbig2/JBig2_HtrdProc.cpp1
-rw-r--r--core/fxcodec/jbig2/JBig2_HuffmanDecoder.h2
-rw-r--r--core/fxcodec/jbig2/JBig2_HuffmanTable_Standard.cpp3
-rw-r--r--core/fxcodec/jbig2/JBig2_Image.cpp1
-rw-r--r--core/fxcodec/jbig2/JBig2_SddProc.cpp1
-rw-r--r--core/fxcodec/jbig2/JBig2_SymbolDict.h1
-rw-r--r--core/fxcodec/lbmp/fx_bmp.cpp1
-rw-r--r--core/fxcodec/lbmp/fx_bmp.h1
-rw-r--r--core/fxcodec/lgif/cgifcontext.h2
-rw-r--r--core/fxcodec/lgif/fx_gif.h2
-rw-r--r--core/fxcrt/cfx_bytestring.h1
-rw-r--r--core/fxcrt/cfx_checksumcontext.cpp1
-rw-r--r--core/fxcrt/cfx_retain_ptr.h9
-rw-r--r--core/fxcrt/css/cfx_csscomputedstyle.h1
-rw-r--r--core/fxcrt/css/cfx_cssrulecollection.h2
-rw-r--r--core/fxcrt/css/cfx_cssstyleselector.h1
-rw-r--r--core/fxcrt/fx_arabic.cpp1
-rw-r--r--core/fxcrt/fx_basic.h27
-rw-r--r--core/fxcrt/fx_basic_utf.cpp4
-rw-r--r--core/fxcrt/fx_basic_util.cpp2
-rw-r--r--core/fxcrt/fx_basic_util_unittest.cpp2
-rw-r--r--core/fxcrt/fx_coordinates.h3
-rw-r--r--core/fxcrt/fx_extension.h8
-rw-r--r--core/fxcrt/fx_memory.h6
-rw-r--r--core/fxcrt/fx_ucd.h1
-rw-r--r--core/fxcrt/fx_ucddata.cpp2
-rw-r--r--core/fxcrt/fxcrt_posix.cpp1
-rw-r--r--core/fxcrt/ifxcrt_fileaccess.h3
-rw-r--r--core/fxcrt/xml/cfx_saxcontext.h1
-rw-r--r--core/fxcrt/xml/cfx_saxreader.cpp1
-rw-r--r--core/fxcrt/xml/cfx_saxreader.h4
-rw-r--r--core/fxcrt/xml/cfx_xmlparser.cpp1
-rw-r--r--core/fxcrt/xml/cxml_element.h1
-rw-r--r--core/fxcrt/xml/cxml_object.h2
-rw-r--r--core/fxge/cfx_cliprgn.h1
-rw-r--r--core/fxge/cfx_folderfontinfo.cpp1
-rw-r--r--core/fxge/cfx_font.cpp1
-rw-r--r--core/fxge/dib/cfx_dibitmap.h1
-rw-r--r--core/fxge/dib/cfx_dibsource.h2
-rw-r--r--core/fxge/dib/cfx_imagestretcher.h2
-rw-r--r--core/fxge/dib/cfx_imagetransformer.h1
-rw-r--r--core/fxge/dib/cstretchengine.h1
-rw-r--r--core/fxge/fx_font.h1
-rw-r--r--core/fxge/skia/fx_skia_device.cpp1
104 files changed, 90 insertions, 113 deletions
diff --git a/core/fdrm/crypto/fx_crypt_unittest.cpp b/core/fdrm/crypto/fx_crypt_unittest.cpp
index 3b3f72c1ad..e7f05b2939 100644
--- a/core/fdrm/crypto/fx_crypt_unittest.cpp
+++ b/core/fdrm/crypto/fx_crypt_unittest.cpp
@@ -9,7 +9,7 @@
#include <memory>
#include <string>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_memory.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/test_support.h"
diff --git a/core/fpdfapi/cmaps/CNS1/cmaps_cns1.cpp b/core/fpdfapi/cmaps/CNS1/cmaps_cns1.cpp
index dc8a21776d..101c316c3b 100644
--- a/core/fpdfapi/cmaps/CNS1/cmaps_cns1.cpp
+++ b/core/fpdfapi/cmaps/CNS1/cmaps_cns1.cpp
@@ -10,7 +10,6 @@
#include "core/fpdfapi/cpdf_modulemgr.h"
#include "core/fpdfapi/font/cpdf_fontglobals.h"
#include "core/fpdfapi/page/cpdf_pagemodule.h"
-#include "core/fxcrt/fx_basic.h"
static const FXCMAP_CMap g_FXCMAP_CNS1_cmaps[] = {
{"B5pc-H", FXCMAP_CMap::Range, g_FXCMAP_B5pc_H_0, 247, FXCMAP_CMap::None,
diff --git a/core/fpdfapi/cmaps/GB1/cmaps_gb1.cpp b/core/fpdfapi/cmaps/GB1/cmaps_gb1.cpp
index 1591da1eca..5776b18c0e 100644
--- a/core/fpdfapi/cmaps/GB1/cmaps_gb1.cpp
+++ b/core/fpdfapi/cmaps/GB1/cmaps_gb1.cpp
@@ -10,7 +10,6 @@
#include "core/fpdfapi/cpdf_modulemgr.h"
#include "core/fpdfapi/font/cpdf_fontglobals.h"
#include "core/fpdfapi/page/cpdf_pagemodule.h"
-#include "core/fxcrt/fx_basic.h"
static const FXCMAP_CMap g_FXCMAP_GB1_cmaps[] = {
{"GB-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GB_EUC_H_0, 90, FXCMAP_CMap::None,
diff --git a/core/fpdfapi/cmaps/Japan1/cmaps_japan1.cpp b/core/fpdfapi/cmaps/Japan1/cmaps_japan1.cpp
index 8fd4fcb7c4..ba8f02dcdf 100644
--- a/core/fpdfapi/cmaps/Japan1/cmaps_japan1.cpp
+++ b/core/fpdfapi/cmaps/Japan1/cmaps_japan1.cpp
@@ -10,7 +10,6 @@
#include "core/fpdfapi/cpdf_modulemgr.h"
#include "core/fpdfapi/font/cpdf_fontglobals.h"
#include "core/fpdfapi/page/cpdf_pagemodule.h"
-#include "core/fxcrt/fx_basic.h"
static const FXCMAP_CMap g_FXCMAP_Japan1_cmaps[] = {
{"83pv-RKSJ-H", FXCMAP_CMap::Range, g_FXCMAP_83pv_RKSJ_H_1, 222,
diff --git a/core/fpdfapi/cmaps/Korea1/cmaps_korea1.cpp b/core/fpdfapi/cmaps/Korea1/cmaps_korea1.cpp
index 8e9784e5de..12dbec6a74 100644
--- a/core/fpdfapi/cmaps/Korea1/cmaps_korea1.cpp
+++ b/core/fpdfapi/cmaps/Korea1/cmaps_korea1.cpp
@@ -10,7 +10,6 @@
#include "core/fpdfapi/cpdf_modulemgr.h"
#include "core/fpdfapi/font/cpdf_fontglobals.h"
#include "core/fpdfapi/page/cpdf_pagemodule.h"
-#include "core/fxcrt/fx_basic.h"
static const FXCMAP_CMap g_FXCMAP_Korea1_cmaps[] = {
{"KSC-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_KSC_EUC_H_0, 467,
diff --git a/core/fpdfapi/cpdf_modulemgr.h b/core/fpdfapi/cpdf_modulemgr.h
index 82566ba282..6b83bc755d 100644
--- a/core/fpdfapi/cpdf_modulemgr.h
+++ b/core/fpdfapi/cpdf_modulemgr.h
@@ -10,8 +10,6 @@
#include <memory>
#include <utility>
-#include "core/fxcrt/fx_basic.h"
-
class CCodec_FaxModule;
class CCodec_FlateModule;
class CCodec_IccModule;
diff --git a/core/fpdfapi/edit/cpdf_creator.h b/core/fpdfapi/edit/cpdf_creator.h
index f141c3880a..d97ee01d73 100644
--- a/core/fpdfapi/edit/cpdf_creator.h
+++ b/core/fpdfapi/edit/cpdf_creator.h
@@ -13,7 +13,7 @@
#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_stream.h"
class CPDF_Array;
class CPDF_CryptoHandler;
diff --git a/core/fpdfapi/edit/cpdf_pagecontentgenerator.h b/core/fpdfapi/edit/cpdf_pagecontentgenerator.h
index 5295d8747b..518d358451 100644
--- a/core/fpdfapi/edit/cpdf_pagecontentgenerator.h
+++ b/core/fpdfapi/edit/cpdf_pagecontentgenerator.h
@@ -11,7 +11,7 @@
#include <vector>
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
class CPDF_Document;
diff --git a/core/fpdfapi/font/cfx_cttgsubtable.h b/core/fpdfapi/font/cfx_cttgsubtable.h
index aac3f86c07..f8fd6c5c5e 100644
--- a/core/fpdfapi/font/cfx_cttgsubtable.h
+++ b/core/fpdfapi/font/cfx_cttgsubtable.h
@@ -13,7 +13,6 @@
#include <set>
#include <vector>
-#include "core/fxcrt/fx_basic.h"
#include "core/fxge/fx_font.h"
#include "core/fxge/fx_freetype.h"
diff --git a/core/fpdfapi/font/cpdf_cmap.h b/core/fpdfapi/font/cpdf_cmap.h
index b47b12d531..f4d6ca9113 100644
--- a/core/fpdfapi/font/cpdf_cmap.h
+++ b/core/fpdfapi/font/cpdf_cmap.h
@@ -11,7 +11,6 @@
#include "core/fpdfapi/font/cpdf_cidfont.h"
#include "core/fxcrt/cfx_retain_ptr.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_CMapManager;
struct FXCMAP_CMap;
diff --git a/core/fpdfapi/font/cpdf_cmapparser.h b/core/fpdfapi/font/cpdf_cmapparser.h
index 184ef75043..b0a0ced30f 100644
--- a/core/fpdfapi/font/cpdf_cmapparser.h
+++ b/core/fpdfapi/font/cpdf_cmapparser.h
@@ -14,7 +14,6 @@
#include "core/fpdfapi/font/cpdf_cidfont.h"
#include "core/fpdfapi/font/cpdf_cmap.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_CMapParser {
public:
diff --git a/core/fpdfapi/font/cpdf_fontglobals.h b/core/fpdfapi/font/cpdf_fontglobals.h
index b930aa2905..6f9b0918db 100644
--- a/core/fpdfapi/font/cpdf_fontglobals.h
+++ b/core/fpdfapi/font/cpdf_fontglobals.h
@@ -13,7 +13,6 @@
#include "core/fpdfapi/cmaps/cmap_int.h"
#include "core/fpdfapi/font/cfx_stockfontarray.h"
#include "core/fpdfapi/font/cpdf_cmapmanager.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_FontGlobals {
public:
diff --git a/core/fpdfapi/font/cpdf_type3char.h b/core/fpdfapi/font/cpdf_type3char.h
index 18c564150c..9f2f94f603 100644
--- a/core/fpdfapi/font/cpdf_type3char.h
+++ b/core/fpdfapi/font/cpdf_type3char.h
@@ -9,6 +9,7 @@
#include <memory>
+#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_system.h"
diff --git a/core/fpdfapi/page/cpdf_clippath.h b/core/fpdfapi/page/cpdf_clippath.h
index 8493a9ccd9..0105270b35 100644
--- a/core/fpdfapi/page/cpdf_clippath.h
+++ b/core/fpdfapi/page/cpdf_clippath.h
@@ -13,7 +13,6 @@
#include "core/fpdfapi/page/cpdf_path.h"
#include "core/fxcrt/cfx_shared_copy_on_write.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
class CPDF_Path;
diff --git a/core/fpdfapi/page/cpdf_colorstate.h b/core/fpdfapi/page/cpdf_colorstate.h
index 0862f489bd..cf63d24ea3 100644
--- a/core/fpdfapi/page/cpdf_colorstate.h
+++ b/core/fpdfapi/page/cpdf_colorstate.h
@@ -9,7 +9,6 @@
#include "core/fpdfapi/page/cpdf_color.h"
#include "core/fxcrt/cfx_shared_copy_on_write.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_system.h"
class CPDF_Color;
diff --git a/core/fpdfapi/page/cpdf_contentmark.h b/core/fpdfapi/page/cpdf_contentmark.h
index 5782addc93..ab966c0728 100644
--- a/core/fpdfapi/page/cpdf_contentmark.h
+++ b/core/fpdfapi/page/cpdf_contentmark.h
@@ -11,7 +11,6 @@
#include "core/fpdfapi/page/cpdf_contentmarkitem.h"
#include "core/fxcrt/cfx_shared_copy_on_write.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_system.h"
class CPDF_Dictionary;
diff --git a/core/fpdfapi/page/cpdf_generalstate.h b/core/fpdfapi/page/cpdf_generalstate.h
index 356841690b..b5b48a94cd 100644
--- a/core/fpdfapi/page/cpdf_generalstate.h
+++ b/core/fpdfapi/page/cpdf_generalstate.h
@@ -9,8 +9,8 @@
#include "core/fxcrt/cfx_shared_copy_on_write.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
+#include "core/fxcrt/fx_string.h"
#include "core/fxge/fx_dib.h"
class CPDF_Object;
diff --git a/core/fpdfapi/page/cpdf_image.cpp b/core/fpdfapi/page/cpdf_image.cpp
index 233b303481..a551bd1811 100644
--- a/core/fpdfapi/page/cpdf_image.cpp
+++ b/core/fpdfapi/page/cpdf_image.cpp
@@ -25,6 +25,7 @@
#include "core/fpdfapi/render/cpdf_dibsource.h"
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fxcodec/fx_codec.h"
+#include "core/fxcrt/fx_stream.h"
#include "core/fxge/fx_dib.h"
#include "third_party/base/numerics/safe_conversions.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fpdfapi/page/cpdf_page.h b/core/fpdfapi/page/cpdf_page.h
index 82df60ce9f..1891e651be 100644
--- a/core/fpdfapi/page/cpdf_page.h
+++ b/core/fpdfapi/page/cpdf_page.h
@@ -10,7 +10,6 @@
#include <memory>
#include "core/fpdfapi/page/cpdf_pageobjectholder.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_system.h"
diff --git a/core/fpdfapi/page/cpdf_pageobjectholder.h b/core/fpdfapi/page/cpdf_pageobjectholder.h
index 0862369809..9ac1a3bdba 100644
--- a/core/fpdfapi/page/cpdf_pageobjectholder.h
+++ b/core/fpdfapi/page/cpdf_pageobjectholder.h
@@ -14,6 +14,7 @@
#include "core/fpdfapi/page/cpdf_pageobjectlist.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
#include "core/fxcrt/fx_coordinates.h"
+#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
class IFX_PauseIndicator;
diff --git a/core/fpdfapi/page/cpdf_sampledfunc.cpp b/core/fpdfapi/page/cpdf_sampledfunc.cpp
index f1cba97d30..91c6b5a70a 100644
--- a/core/fpdfapi/page/cpdf_sampledfunc.cpp
+++ b/core/fpdfapi/page/cpdf_sampledfunc.cpp
@@ -8,6 +8,7 @@
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fxcrt/cfx_fixedbufgrow.h"
+#include "core/fxcrt/fx_extension.h"
#include "core/fxcrt/fx_safe_types.h"
namespace {
diff --git a/core/fpdfapi/page/cpdf_textstate.h b/core/fpdfapi/page/cpdf_textstate.h
index ff3ab8dd6c..e7239e1f91 100644
--- a/core/fpdfapi/page/cpdf_textstate.h
+++ b/core/fpdfapi/page/cpdf_textstate.h
@@ -9,7 +9,6 @@
#include "core/fxcrt/cfx_shared_copy_on_write.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_Document;
class CPDF_Font;
diff --git a/core/fpdfapi/parser/cfdf_document.h b/core/fpdfapi/parser/cfdf_document.h
index 45bf83d426..d58f93ced4 100644
--- a/core/fpdfapi/parser/cfdf_document.h
+++ b/core/fpdfapi/parser/cfdf_document.h
@@ -12,9 +12,9 @@
#include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
#include "core/fpdfapi/parser/cpdf_object.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_Dictionary;
+class IFX_SeekableReadStream;
class CFDF_Document : public CPDF_IndirectObjectHolder {
public:
diff --git a/core/fpdfapi/parser/cpdf_array.cpp b/core/fpdfapi/parser/cpdf_array.cpp
index 5d079a38b4..a0957b6c2b 100644
--- a/core/fpdfapi/parser/cpdf_array.cpp
+++ b/core/fpdfapi/parser/cpdf_array.cpp
@@ -14,6 +14,7 @@
#include "core/fpdfapi/parser/cpdf_reference.h"
#include "core/fpdfapi/parser/cpdf_stream.h"
#include "core/fpdfapi/parser/cpdf_string.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/logging.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fpdfapi/parser/cpdf_array.h b/core/fpdfapi/parser/cpdf_array.h
index ed5d3e33fd..d1be233652 100644
--- a/core/fpdfapi/parser/cpdf_array.h
+++ b/core/fpdfapi/parser/cpdf_array.h
@@ -15,7 +15,6 @@
#include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
#include "core/fpdfapi/parser/cpdf_object.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fpdfapi/parser/cpdf_boolean.cpp b/core/fpdfapi/parser/cpdf_boolean.cpp
index eb01c06332..2633c876d3 100644
--- a/core/fpdfapi/parser/cpdf_boolean.cpp
+++ b/core/fpdfapi/parser/cpdf_boolean.cpp
@@ -5,6 +5,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "core/fpdfapi/parser/cpdf_boolean.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/ptr_util.h"
CPDF_Boolean::CPDF_Boolean() : m_bValue(false) {}
diff --git a/core/fpdfapi/parser/cpdf_data_avail.h b/core/fpdfapi/parser/cpdf_data_avail.h
index 1f2a1f2475..1fcdaf034e 100644
--- a/core/fpdfapi/parser/cpdf_data_avail.h
+++ b/core/fpdfapi/parser/cpdf_data_avail.h
@@ -14,7 +14,6 @@
#include "core/fpdfapi/parser/cpdf_parser.h"
#include "core/fpdfapi/parser/cpdf_syntax_parser.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_Dictionary;
class CPDF_HintTables;
diff --git a/core/fpdfapi/parser/cpdf_dictionary.cpp b/core/fpdfapi/parser/cpdf_dictionary.cpp
index a339a8becd..4c035871df 100644
--- a/core/fpdfapi/parser/cpdf_dictionary.cpp
+++ b/core/fpdfapi/parser/cpdf_dictionary.cpp
@@ -17,6 +17,7 @@
#include "core/fpdfapi/parser/cpdf_stream.h"
#include "core/fpdfapi/parser/cpdf_string.h"
#include "core/fpdfapi/parser/fpdf_parser_decode.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/logging.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fpdfapi/parser/cpdf_document.h b/core/fpdfapi/parser/cpdf_document.h
index 87d40fd61b..cc5076379e 100644
--- a/core/fpdfapi/parser/cpdf_document.h
+++ b/core/fpdfapi/parser/cpdf_document.h
@@ -17,7 +17,6 @@
#include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
#include "core/fpdfapi/parser/cpdf_object.h"
#include "core/fpdfdoc/cpdf_linklist.h"
-#include "core/fxcrt/fx_basic.h"
class CFX_Font;
class CFX_Matrix;
diff --git a/core/fpdfapi/parser/cpdf_name.cpp b/core/fpdfapi/parser/cpdf_name.cpp
index 0287b7ab17..ae33bc7fa0 100644
--- a/core/fpdfapi/parser/cpdf_name.cpp
+++ b/core/fpdfapi/parser/cpdf_name.cpp
@@ -7,6 +7,7 @@
#include "core/fpdfapi/parser/cpdf_name.h"
#include "core/fpdfapi/parser/fpdf_parser_decode.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/ptr_util.h"
CPDF_Name::CPDF_Name(CFX_WeakPtr<CFX_ByteStringPool> pPool,
diff --git a/core/fpdfapi/parser/cpdf_null.cpp b/core/fpdfapi/parser/cpdf_null.cpp
index 7c1cdac486..1074efd863 100644
--- a/core/fpdfapi/parser/cpdf_null.cpp
+++ b/core/fpdfapi/parser/cpdf_null.cpp
@@ -5,6 +5,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "core/fpdfapi/parser/cpdf_null.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/ptr_util.h"
CPDF_Null::CPDF_Null() {}
diff --git a/core/fpdfapi/parser/cpdf_number.cpp b/core/fpdfapi/parser/cpdf_number.cpp
index 73d689fffe..50c48d6cb8 100644
--- a/core/fpdfapi/parser/cpdf_number.cpp
+++ b/core/fpdfapi/parser/cpdf_number.cpp
@@ -5,6 +5,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "core/fpdfapi/parser/cpdf_number.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/ptr_util.h"
CPDF_Number::CPDF_Number() : m_bInteger(true), m_Integer(0) {}
diff --git a/core/fpdfapi/parser/cpdf_object.h b/core/fpdfapi/parser/cpdf_object.h
index 04b77ec706..82d7801cce 100644
--- a/core/fpdfapi/parser/cpdf_object.h
+++ b/core/fpdfapi/parser/cpdf_object.h
@@ -11,7 +11,6 @@
#include <set>
#include <type_traits>
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
@@ -24,6 +23,7 @@ class CPDF_Number;
class CPDF_Reference;
class CPDF_Stream;
class CPDF_String;
+class IFX_ArchiveStream;
class CPDF_Object {
public:
diff --git a/core/fpdfapi/parser/cpdf_object_unittest.cpp b/core/fpdfapi/parser/cpdf_object_unittest.cpp
index ffaa2648a3..dd170ba90e 100644
--- a/core/fpdfapi/parser/cpdf_object_unittest.cpp
+++ b/core/fpdfapi/parser/cpdf_object_unittest.cpp
@@ -2,23 +2,21 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include <memory>
+#include <string>
+#include <utility>
+#include <vector>
+
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fpdfapi/parser/cpdf_boolean.h"
#include "core/fpdfapi/parser/cpdf_dictionary.h"
+#include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
#include "core/fpdfapi/parser/cpdf_name.h"
#include "core/fpdfapi/parser/cpdf_null.h"
#include "core/fpdfapi/parser/cpdf_number.h"
#include "core/fpdfapi/parser/cpdf_reference.h"
#include "core/fpdfapi/parser/cpdf_stream.h"
#include "core/fpdfapi/parser/cpdf_string.h"
-
-#include <memory>
-#include <string>
-#include <utility>
-#include <vector>
-
-#include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
-#include "core/fxcrt/fx_basic.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
diff --git a/core/fpdfapi/parser/cpdf_parser.h b/core/fpdfapi/parser/cpdf_parser.h
index 10c70357da..0db2aa7ba1 100644
--- a/core/fpdfapi/parser/cpdf_parser.h
+++ b/core/fpdfapi/parser/cpdf_parser.h
@@ -13,8 +13,10 @@
#include <set>
#include <vector>
+#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_string.h"
+#include "core/fxcrt/fx_system.h"
class CPDF_Array;
class CPDF_CryptoHandler;
diff --git a/core/fpdfapi/parser/cpdf_read_validator.h b/core/fpdfapi/parser/cpdf_read_validator.h
index 20ec866a59..cc04a1f55e 100644
--- a/core/fpdfapi/parser/cpdf_read_validator.h
+++ b/core/fpdfapi/parser/cpdf_read_validator.h
@@ -6,6 +6,7 @@
#define CORE_FPDFAPI_PARSER_CPDF_READ_VALIDATOR_H_
#include "core/fpdfapi/parser/cpdf_data_avail.h"
+#include "core/fxcrt/fx_stream.h"
class CPDF_ReadValidator : public IFX_SeekableReadStream {
public:
diff --git a/core/fpdfapi/parser/cpdf_reference.cpp b/core/fpdfapi/parser/cpdf_reference.cpp
index 4594fe9f44..ce4c308d8c 100644
--- a/core/fpdfapi/parser/cpdf_reference.cpp
+++ b/core/fpdfapi/parser/cpdf_reference.cpp
@@ -7,6 +7,7 @@
#include "core/fpdfapi/parser/cpdf_reference.h"
#include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/ptr_util.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fpdfapi/parser/cpdf_simple_parser_unittest.cpp b/core/fpdfapi/parser/cpdf_simple_parser_unittest.cpp
index f1c84853dc..bdb532d3e0 100644
--- a/core/fpdfapi/parser/cpdf_simple_parser_unittest.cpp
+++ b/core/fpdfapi/parser/cpdf_simple_parser_unittest.cpp
@@ -7,7 +7,6 @@
#include <string>
#include "core/fpdfapi/parser/fpdf_parser_utility.h"
-#include "core/fxcrt/fx_basic.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/test_support.h"
diff --git a/core/fpdfapi/parser/cpdf_stream.cpp b/core/fpdfapi/parser/cpdf_stream.cpp
index d430a4fb45..1c8660efb0 100644
--- a/core/fpdfapi/parser/cpdf_stream.cpp
+++ b/core/fpdfapi/parser/cpdf_stream.cpp
@@ -12,6 +12,7 @@
#include "core/fpdfapi/parser/cpdf_number.h"
#include "core/fpdfapi/parser/cpdf_stream_acc.h"
#include "core/fpdfapi/parser/fpdf_parser_decode.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/numerics/safe_conversions.h"
#include "third_party/base/ptr_util.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fpdfapi/parser/cpdf_stream.h b/core/fpdfapi/parser/cpdf_stream.h
index 2795f7daae..1dbbd0343e 100644
--- a/core/fpdfapi/parser/cpdf_stream.h
+++ b/core/fpdfapi/parser/cpdf_stream.h
@@ -13,7 +13,7 @@
#include "core/fpdfapi/parser/cpdf_dictionary.h"
#include "core/fpdfapi/parser/cpdf_object.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_stream.h"
class CPDF_Stream : public CPDF_Object {
public:
diff --git a/core/fpdfapi/parser/cpdf_string.cpp b/core/fpdfapi/parser/cpdf_string.cpp
index 74a2733fc5..6ce6bf3473 100644
--- a/core/fpdfapi/parser/cpdf_string.cpp
+++ b/core/fpdfapi/parser/cpdf_string.cpp
@@ -9,6 +9,7 @@
#include <utility>
#include "core/fpdfapi/parser/fpdf_parser_decode.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/ptr_util.h"
CPDF_String::CPDF_String() : m_bHex(false) {}
diff --git a/core/fpdfapi/parser/cpdf_syntax_parser.h b/core/fpdfapi/parser/cpdf_syntax_parser.h
index 25c7403961..c95188acbe 100644
--- a/core/fpdfapi/parser/cpdf_syntax_parser.h
+++ b/core/fpdfapi/parser/cpdf_syntax_parser.h
@@ -12,7 +12,6 @@
#include "core/fxcrt/cfx_string_pool_template.h"
#include "core/fxcrt/cfx_weak_ptr.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_CryptoHandler;
class CPDF_Dictionary;
diff --git a/core/fpdfapi/parser/fpdf_parser_decode.h b/core/fpdfapi/parser/fpdf_parser_decode.h
index 4d2c6732e0..23ca0a0fae 100644
--- a/core/fpdfapi/parser/fpdf_parser_decode.h
+++ b/core/fpdfapi/parser/fpdf_parser_decode.h
@@ -9,7 +9,7 @@
#include <memory>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_string.h"
class CCodec_ScanlineDecoder;
class CPDF_Dictionary;
diff --git a/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp b/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp
index 799da49bdc..502e4666f7 100644
--- a/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp
+++ b/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp
@@ -7,7 +7,6 @@
#include <cstring>
#include <string>
-#include "core/fxcrt/fx_basic.h"
#include "testing/embedder_test.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/test_support.h"
diff --git a/core/fpdfapi/parser/fpdf_parser_utility.cpp b/core/fpdfapi/parser/fpdf_parser_utility.cpp
index a36d640da3..c6487f55a0 100644
--- a/core/fpdfapi/parser/fpdf_parser_utility.cpp
+++ b/core/fpdfapi/parser/fpdf_parser_utility.cpp
@@ -16,6 +16,7 @@
#include "core/fpdfapi/parser/cpdf_string.h"
#include "core/fpdfapi/parser/fpdf_parser_decode.h"
#include "core/fxcrt/fx_extension.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/logging.h"
// Indexed by 8-bit character code, contains either:
diff --git a/core/fpdfapi/parser/fpdf_parser_utility.h b/core/fpdfapi/parser/fpdf_parser_utility.h
index 47431e47dd..94ee1fcfd3 100644
--- a/core/fpdfapi/parser/fpdf_parser_utility.h
+++ b/core/fpdfapi/parser/fpdf_parser_utility.h
@@ -8,7 +8,7 @@
#define CORE_FPDFAPI_PARSER_FPDF_PARSER_UTILITY_H_
#include "core/fxcrt/cfx_retain_ptr.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_string.h"
class IFX_SeekableReadStream;
class CPDF_Dictionary;
diff --git a/core/fpdfapi/render/cpdf_imageloader.cpp b/core/fpdfapi/render/cpdf_imageloader.cpp
index 60e64449bf..f195b89dfc 100644
--- a/core/fpdfapi/render/cpdf_imageloader.cpp
+++ b/core/fpdfapi/render/cpdf_imageloader.cpp
@@ -12,7 +12,6 @@
#include "core/fpdfapi/render/cpdf_imagecacheentry.h"
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fpdfapi/render/cpdf_renderstatus.h"
-#include "core/fxcrt/fx_basic.h"
CPDF_ImageLoader::CPDF_ImageLoader()
: m_MatteColor(0),
diff --git a/core/fpdfapi/render/cpdf_imageloader.h b/core/fpdfapi/render/cpdf_imageloader.h
index e96fe37ca1..69577c3a18 100644
--- a/core/fpdfapi/render/cpdf_imageloader.h
+++ b/core/fpdfapi/render/cpdf_imageloader.h
@@ -9,8 +9,8 @@
#include <memory>
+#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxge/fx_dib.h"
class CPDF_ImageObject;
diff --git a/core/fpdfapi/render/cpdf_rendercontext.h b/core/fpdfapi/render/cpdf_rendercontext.h
index 220ff2b775..feb71871b1 100644
--- a/core/fpdfapi/render/cpdf_rendercontext.h
+++ b/core/fpdfapi/render/cpdf_rendercontext.h
@@ -9,8 +9,8 @@
#include <vector>
+#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
class CPDF_Dictionary;
diff --git a/core/fpdfdoc/cpdf_formfield.h b/core/fpdfdoc/cpdf_formfield.h
index f5c4c6964b..417f9d189f 100644
--- a/core/fpdfdoc/cpdf_formfield.h
+++ b/core/fpdfdoc/cpdf_formfield.h
@@ -14,7 +14,6 @@
#include "core/fpdfdoc/cpdf_aaction.h"
#include "core/fpdfdoc/cpdf_formfield.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fpdfdoc/ctypeset.h b/core/fpdfdoc/ctypeset.h
index 1b016ea562..6131467e56 100644
--- a/core/fpdfdoc/ctypeset.h
+++ b/core/fpdfdoc/ctypeset.h
@@ -8,6 +8,7 @@
#define CORE_FPDFDOC_CTYPESET_H_
#include "core/fpdfdoc/cpvt_floatrect.h"
+#include "core/fxcrt/cfx_unowned_ptr.h"
#include "core/fxcrt/fx_system.h"
class CPDF_VariableText;
diff --git a/core/fpdftext/cpdf_linkextract.h b/core/fpdftext/cpdf_linkextract.h
index 31004577b9..5c022d3d78 100644
--- a/core/fpdftext/cpdf_linkextract.h
+++ b/core/fpdftext/cpdf_linkextract.h
@@ -9,7 +9,6 @@
#include <vector>
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
diff --git a/core/fxcodec/codec/ccodec_jbig2module.h b/core/fxcodec/codec/ccodec_jbig2module.h
index 9b894fbc97..6b36f19a6d 100644
--- a/core/fxcodec/codec/ccodec_jbig2module.h
+++ b/core/fxcodec/codec/ccodec_jbig2module.h
@@ -10,7 +10,7 @@
#include <memory>
#include "core/fxcodec/fx_codec_def.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/cfx_retain_ptr.h"
class CJBig2_Context;
class CJBig2_Image;
diff --git a/core/fxcodec/codec/ccodec_tiffmodule.cpp b/core/fxcodec/codec/ccodec_tiffmodule.cpp
index 1f101061b4..e0cb719475 100644
--- a/core/fxcodec/codec/ccodec_tiffmodule.cpp
+++ b/core/fxcodec/codec/ccodec_tiffmodule.cpp
@@ -12,6 +12,7 @@
#include "core/fxcodec/fx_codec.h"
#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/fx_safe_types.h"
+#include "core/fxcrt/fx_stream.h"
#include "core/fxge/dib/cfx_dibitmap.h"
#include "core/fxge/fx_dib.h"
#include "third_party/base/logging.h"
diff --git a/core/fxcodec/codec/ccodec_tiffmodule.h b/core/fxcodec/codec/ccodec_tiffmodule.h
index 73d9c37992..6e6e36b697 100644
--- a/core/fxcodec/codec/ccodec_tiffmodule.h
+++ b/core/fxcodec/codec/ccodec_tiffmodule.h
@@ -14,6 +14,7 @@
#include "core/fxge/dib/cfx_dibitmap.h"
class CFX_DIBAttribute;
+class IFX_SeekableReadStream;
class CCodec_TiffModule {
public:
diff --git a/core/fxcodec/codec/fx_codec_progress.cpp b/core/fxcodec/codec/fx_codec_progress.cpp
index 905a957184..a70041bff9 100644
--- a/core/fxcodec/codec/fx_codec_progress.cpp
+++ b/core/fxcodec/codec/fx_codec_progress.cpp
@@ -11,6 +11,7 @@
#include <vector>
#include "core/fxcodec/fx_codec.h"
+#include "core/fxcrt/fx_stream.h"
#include "core/fxge/dib/cfx_dibitmap.h"
#include "core/fxge/fx_dib.h"
#include "third_party/base/logging.h"
diff --git a/core/fxcodec/fx_codec.h b/core/fxcodec/fx_codec.h
index 71b002282c..2e83319ef7 100644
--- a/core/fxcodec/fx_codec.h
+++ b/core/fxcodec/fx_codec.h
@@ -22,7 +22,6 @@
#include "core/fxcodec/codec/ccodec_jpxmodule.h"
#include "core/fxcodec/codec/ccodec_scanlinedecoder.h"
#include "core/fxcodec/fx_codec_def.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
#ifdef PDF_ENABLE_XFA
diff --git a/core/fxcodec/jbig2/JBig2_ArithDecoder.cpp b/core/fxcodec/jbig2/JBig2_ArithDecoder.cpp
index 78c7939458..45628a87ce 100644
--- a/core/fxcodec/jbig2/JBig2_ArithDecoder.cpp
+++ b/core/fxcodec/jbig2/JBig2_ArithDecoder.cpp
@@ -7,7 +7,7 @@
#include "core/fxcodec/jbig2/JBig2_ArithDecoder.h"
#include "core/fxcodec/jbig2/JBig2_BitStream.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_memory.h"
namespace {
diff --git a/core/fxcodec/jbig2/JBig2_ArithIntDecoder.cpp b/core/fxcodec/jbig2/JBig2_ArithIntDecoder.cpp
index 228e16ec09..1701538b4f 100644
--- a/core/fxcodec/jbig2/JBig2_ArithIntDecoder.cpp
+++ b/core/fxcodec/jbig2/JBig2_ArithIntDecoder.cpp
@@ -8,7 +8,7 @@
#include <vector>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_memory.h"
namespace {
diff --git a/core/fxcodec/jbig2/JBig2_BitStream.h b/core/fxcodec/jbig2/JBig2_BitStream.h
index 7517eb0c6c..0be6c4b977 100644
--- a/core/fxcodec/jbig2/JBig2_BitStream.h
+++ b/core/fxcodec/jbig2/JBig2_BitStream.h
@@ -8,7 +8,6 @@
#define CORE_FXCODEC_JBIG2_JBIG2_BITSTREAM_H_
#include "core/fxcrt/cfx_retain_ptr.h"
-#include "core/fxcrt/fx_basic.h"
class CPDF_StreamAcc;
diff --git a/core/fxcodec/jbig2/JBig2_HtrdProc.cpp b/core/fxcodec/jbig2/JBig2_HtrdProc.cpp
index 9c9480e263..bd1d92f2be 100644
--- a/core/fxcodec/jbig2/JBig2_HtrdProc.cpp
+++ b/core/fxcodec/jbig2/JBig2_HtrdProc.cpp
@@ -12,7 +12,6 @@
#include "core/fxcodec/jbig2/JBig2_BitStream.h"
#include "core/fxcodec/jbig2/JBig2_GrdProc.h"
#include "core/fxcodec/jbig2/JBig2_Image.h"
-#include "core/fxcrt/fx_basic.h"
#include "third_party/base/ptr_util.h"
std::unique_ptr<CJBig2_Image> CJBig2_HTRDProc::decode_Arith(
diff --git a/core/fxcodec/jbig2/JBig2_HuffmanDecoder.h b/core/fxcodec/jbig2/JBig2_HuffmanDecoder.h
index c7192b74ed..15ebf7827d 100644
--- a/core/fxcodec/jbig2/JBig2_HuffmanDecoder.h
+++ b/core/fxcodec/jbig2/JBig2_HuffmanDecoder.h
@@ -9,6 +9,8 @@
#include "core/fxcodec/jbig2/JBig2_BitStream.h"
#include "core/fxcodec/jbig2/JBig2_HuffmanTable.h"
+#include "core/fxcrt/cfx_unowned_ptr.h"
+
class CJBig2_HuffmanDecoder {
public:
explicit CJBig2_HuffmanDecoder(CJBig2_BitStream* pStream);
diff --git a/core/fxcodec/jbig2/JBig2_HuffmanTable_Standard.cpp b/core/fxcodec/jbig2/JBig2_HuffmanTable_Standard.cpp
index 4c2ba997d5..abff7868e8 100644
--- a/core/fxcodec/jbig2/JBig2_HuffmanTable_Standard.cpp
+++ b/core/fxcodec/jbig2/JBig2_HuffmanTable_Standard.cpp
@@ -5,7 +5,8 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "core/fxcodec/jbig2/JBig2_HuffmanTable_Standard.h"
-#include "core/fxcrt/fx_basic.h"
+
+#include "core/fxcrt/fx_memory.h"
const bool HuffmanTable_HTOOB_B1 = false;
const JBig2TableLine HuffmanTable_B1[] = {{1, 4, 0},
diff --git a/core/fxcodec/jbig2/JBig2_Image.cpp b/core/fxcodec/jbig2/JBig2_Image.cpp
index e07eb32fe3..f9868797da 100644
--- a/core/fxcodec/jbig2/JBig2_Image.cpp
+++ b/core/fxcodec/jbig2/JBig2_Image.cpp
@@ -8,6 +8,7 @@
#include "core/fxcodec/jbig2/JBig2_Image.h"
#include "core/fxcrt/fx_coordinates.h"
+#include "core/fxcrt/fx_memory.h"
#include "core/fxcrt/fx_safe_types.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fxcodec/jbig2/JBig2_SddProc.cpp b/core/fxcodec/jbig2/JBig2_SddProc.cpp
index 1a98b17d34..b587ac01dd 100644
--- a/core/fxcodec/jbig2/JBig2_SddProc.cpp
+++ b/core/fxcodec/jbig2/JBig2_SddProc.cpp
@@ -19,7 +19,6 @@
#include "core/fxcodec/jbig2/JBig2_HuffmanTable_Standard.h"
#include "core/fxcodec/jbig2/JBig2_SymbolDict.h"
#include "core/fxcodec/jbig2/JBig2_TrdProc.h"
-#include "core/fxcrt/fx_basic.h"
#include "third_party/base/ptr_util.h"
std::unique_ptr<CJBig2_SymbolDict> CJBig2_SDDProc::decode_Arith(
diff --git a/core/fxcodec/jbig2/JBig2_SymbolDict.h b/core/fxcodec/jbig2/JBig2_SymbolDict.h
index d6b897ce70..49289fb650 100644
--- a/core/fxcodec/jbig2/JBig2_SymbolDict.h
+++ b/core/fxcodec/jbig2/JBig2_SymbolDict.h
@@ -12,7 +12,6 @@
#include <vector>
#include "core/fxcodec/jbig2/JBig2_ArithDecoder.h"
-#include "core/fxcrt/fx_basic.h"
class CJBig2_Image;
diff --git a/core/fxcodec/lbmp/fx_bmp.cpp b/core/fxcodec/lbmp/fx_bmp.cpp
index 989b3a4f84..f445453c65 100644
--- a/core/fxcodec/lbmp/fx_bmp.cpp
+++ b/core/fxcodec/lbmp/fx_bmp.cpp
@@ -10,6 +10,7 @@
#include <limits>
#include "core/fxcrt/fx_system.h"
+#include "third_party/base/logging.h"
#include "third_party/base/ptr_util.h"
static_assert(sizeof(BmpFileHeader) == 14,
diff --git a/core/fxcodec/lbmp/fx_bmp.h b/core/fxcodec/lbmp/fx_bmp.h
index 175d9bede5..3876aed407 100644
--- a/core/fxcodec/lbmp/fx_bmp.h
+++ b/core/fxcodec/lbmp/fx_bmp.h
@@ -13,7 +13,6 @@
#include <vector>
#include "core/fxcodec/codec/ccodec_bmpmodule.h"
-#include "core/fxcrt/fx_basic.h"
#define BMP_WIDTHBYTES(width, bitCount) ((width * bitCount) + 31) / 32 * 4
#define BMP_PAL_ENCODE(a, r, g, b) \
diff --git a/core/fxcodec/lgif/cgifcontext.h b/core/fxcodec/lgif/cgifcontext.h
index fa46b14559..1bd6d46d31 100644
--- a/core/fxcodec/lgif/cgifcontext.h
+++ b/core/fxcodec/lgif/cgifcontext.h
@@ -13,7 +13,7 @@
#include "core/fxcodec/codec/ccodec_gifmodule.h"
#include "core/fxcodec/lgif/fx_gif.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_string.h"
class CGifContext : public CCodec_GifModule::Context {
public:
diff --git a/core/fxcodec/lgif/fx_gif.h b/core/fxcodec/lgif/fx_gif.h
index 5216eeb70e..fd95aba17a 100644
--- a/core/fxcodec/lgif/fx_gif.h
+++ b/core/fxcodec/lgif/fx_gif.h
@@ -10,8 +10,6 @@
#include <memory>
#include <vector>
-#include "core/fxcrt/fx_basic.h"
-
class CGifContext;
#define GIF_SIGNATURE "GIF"
diff --git a/core/fxcrt/cfx_bytestring.h b/core/fxcrt/cfx_bytestring.h
index a8a28169a5..390a4b3b70 100644
--- a/core/fxcrt/cfx_bytestring.h
+++ b/core/fxcrt/cfx_bytestring.h
@@ -14,7 +14,6 @@
#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/cfx_string_c_template.h"
#include "core/fxcrt/cfx_string_data_template.h"
-#include "core/fxcrt/fx_memory.h"
#include "core/fxcrt/fx_system.h"
#include "third_party/base/optional.h"
diff --git a/core/fxcrt/cfx_checksumcontext.cpp b/core/fxcrt/cfx_checksumcontext.cpp
index eb20db69ec..31140169b4 100644
--- a/core/fxcrt/cfx_checksumcontext.cpp
+++ b/core/fxcrt/cfx_checksumcontext.cpp
@@ -7,6 +7,7 @@
#include "core/fxcrt/cfx_checksumcontext.h"
#include "core/fdrm/crypto/fx_crypt.h"
+#include "core/fxcrt/fx_stream.h"
#include "core/fxcrt/xml/cfx_saxreaderhandler.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fxcrt/cfx_retain_ptr.h b/core/fxcrt/cfx_retain_ptr.h
index 32a77c5a6c..d3896ba6ae 100644
--- a/core/fxcrt/cfx_retain_ptr.h
+++ b/core/fxcrt/cfx_retain_ptr.h
@@ -9,7 +9,13 @@
#include <memory>
#include <utility>
-#include "core/fxcrt/fx_memory.h"
+#include "core/fxcrt/fx_system.h"
+
+// Used with std::unique_ptr to Release() objects that can't be deleted.
+template <class T>
+struct ReleaseDeleter {
+ inline void operator()(T* ptr) const { ptr->Release(); }
+};
// Analogous to base's scoped_refptr.
template <class T>
@@ -25,6 +31,7 @@ class CFX_RetainPtr {
CFX_RetainPtr(CFX_RetainPtr&& that) noexcept { Swap(that); }
// Deliberately implicit to allow returning nullptrs.
+ // NOLINTNEXTLINE(runtime/explicit)
CFX_RetainPtr(std::nullptr_t ptr) {}
template <class U>
diff --git a/core/fxcrt/css/cfx_csscomputedstyle.h b/core/fxcrt/css/cfx_csscomputedstyle.h
index bd7cd8268b..bb4b62bc2b 100644
--- a/core/fxcrt/css/cfx_csscomputedstyle.h
+++ b/core/fxcrt/css/cfx_csscomputedstyle.h
@@ -11,7 +11,6 @@
#include "core/fxcrt/css/cfx_css.h"
#include "core/fxcrt/css/cfx_csscustomproperty.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_string.h"
class CFX_CSSValueList;
diff --git a/core/fxcrt/css/cfx_cssrulecollection.h b/core/fxcrt/css/cfx_cssrulecollection.h
index 6a509d49e7..6b91c6bcd5 100644
--- a/core/fxcrt/css/cfx_cssrulecollection.h
+++ b/core/fxcrt/css/cfx_cssrulecollection.h
@@ -11,7 +11,7 @@
#include <memory>
#include <vector>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_string.h"
class CFX_CSSDeclaration;
class CFX_CSSSelector;
diff --git a/core/fxcrt/css/cfx_cssstyleselector.h b/core/fxcrt/css/cfx_cssstyleselector.h
index 56d933b614..143e51ee68 100644
--- a/core/fxcrt/css/cfx_cssstyleselector.h
+++ b/core/fxcrt/css/cfx_cssstyleselector.h
@@ -12,7 +12,6 @@
#include "core/fxcrt/css/cfx_css.h"
#include "core/fxcrt/css/cfx_cssrulecollection.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_system.h"
class CFX_CSSComputedStyle;
diff --git a/core/fxcrt/fx_arabic.cpp b/core/fxcrt/fx_arabic.cpp
index fecfc3f759..a4a65e2cad 100644
--- a/core/fxcrt/fx_arabic.cpp
+++ b/core/fxcrt/fx_arabic.cpp
@@ -9,6 +9,7 @@
#include <algorithm>
#include <vector>
+#include "core/fxcrt/fx_extension.h"
#include "core/fxcrt/fx_ucd.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fxcrt/fx_basic.h b/core/fxcrt/fx_basic.h
deleted file mode 100644
index c60f0d367b..0000000000
--- a/core/fxcrt/fx_basic.h
+++ /dev/null
@@ -1,27 +0,0 @@
-// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-#ifndef CORE_FXCRT_FX_BASIC_H_
-#define CORE_FXCRT_FX_BASIC_H_
-
-#include <algorithm>
-#include <memory>
-#include <vector>
-
-#include "core/fxcrt/cfx_binarybuf.h"
-#include "core/fxcrt/cfx_retain_ptr.h"
-#include "core/fxcrt/fx_memory.h"
-#include "core/fxcrt/fx_stream.h"
-#include "core/fxcrt/fx_string.h"
-#include "core/fxcrt/fx_system.h"
-
-#ifdef PDF_ENABLE_XFA
-#define FX_IsOdd(a) ((a)&1)
-#endif // PDF_ENABLE_XFA
-
-uint32_t GetBits32(const uint8_t* pData, int bitpos, int nbits);
-
-#endif // CORE_FXCRT_FX_BASIC_H_
diff --git a/core/fxcrt/fx_basic_utf.cpp b/core/fxcrt/fx_basic_utf.cpp
index 8a5587d5c4..e0b87479f2 100644
--- a/core/fxcrt/fx_basic_utf.cpp
+++ b/core/fxcrt/fx_basic_utf.cpp
@@ -4,10 +4,10 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "core/fxcrt/fx_basic.h"
-
#include <vector>
+#include "core/fxcrt/fx_string.h"
+
namespace {
class CFX_UTF8Encoder {
diff --git a/core/fxcrt/fx_basic_util.cpp b/core/fxcrt/fx_basic_util.cpp
index 6f59f32fff..2a9ce05e4b 100644
--- a/core/fxcrt/fx_basic_util.cpp
+++ b/core/fxcrt/fx_basic_util.cpp
@@ -9,8 +9,8 @@
#include <limits>
#include <memory>
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_extension.h"
+#include "core/fxcrt/fx_stream.h"
#include "third_party/base/ptr_util.h"
bool FX_atonum(const CFX_ByteStringC& strc, void* pData) {
diff --git a/core/fxcrt/fx_basic_util_unittest.cpp b/core/fxcrt/fx_basic_util_unittest.cpp
index f4e3f794d3..9a130bece4 100644
--- a/core/fxcrt/fx_basic_util_unittest.cpp
+++ b/core/fxcrt/fx_basic_util_unittest.cpp
@@ -4,7 +4,7 @@
#include <limits>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_extension.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
diff --git a/core/fxcrt/fx_coordinates.h b/core/fxcrt/fx_coordinates.h
index d84b866a57..0c0ccb065f 100644
--- a/core/fxcrt/fx_coordinates.h
+++ b/core/fxcrt/fx_coordinates.h
@@ -10,7 +10,8 @@
#include <algorithm>
#include <tuple>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_system.h"
+#include "third_party/base/numerics/safe_math.h"
class CFX_Matrix;
diff --git a/core/fxcrt/fx_extension.h b/core/fxcrt/fx_extension.h
index 255ee2e3df..fbb86fea45 100644
--- a/core/fxcrt/fx_extension.h
+++ b/core/fxcrt/fx_extension.h
@@ -11,10 +11,14 @@
#include <cwctype>
#include <memory>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_string.h"
#define FX_INVALID_OFFSET static_cast<uint32_t>(-1)
+#ifdef PDF_ENABLE_XFA
+#define FX_IsOdd(a) ((a)&1)
+#endif // PDF_ENABLE_XFA
+
float FXSYS_wcstof(const wchar_t* pwsStr,
int32_t iLength = -1,
int32_t* pUsedLen = nullptr);
@@ -102,4 +106,6 @@ void FX_GUID_CreateV4(FX_GUID* pGUID);
CFX_ByteString FX_GUID_ToString(const FX_GUID* pGUID, bool bSeparator = true);
#endif // PDF_ENABLE_XFA
+uint32_t GetBits32(const uint8_t* pData, int bitpos, int nbits);
+
#endif // CORE_FXCRT_FX_EXTENSION_H_
diff --git a/core/fxcrt/fx_memory.h b/core/fxcrt/fx_memory.h
index 65cf19c980..f89095ad9c 100644
--- a/core/fxcrt/fx_memory.h
+++ b/core/fxcrt/fx_memory.h
@@ -136,12 +136,6 @@ struct FxFreeDeleter {
inline void operator()(void* ptr) const { FX_Free(ptr); }
};
-// Used with std::unique_ptr to Release() objects that can't be deleted.
-template <class T>
-struct ReleaseDeleter {
- inline void operator()(T* ptr) const { ptr->Release(); }
-};
-
#endif // __cplusplus
#endif // CORE_FXCRT_FX_MEMORY_H_
diff --git a/core/fxcrt/fx_ucd.h b/core/fxcrt/fx_ucd.h
index 3b72516324..50f3801c87 100644
--- a/core/fxcrt/fx_ucd.h
+++ b/core/fxcrt/fx_ucd.h
@@ -8,7 +8,6 @@
#define CORE_FXCRT_FX_UCD_H_
#include "core/fxcrt/cfx_retain_ptr.h"
-#include "core/fxcrt/fx_basic.h"
constexpr uint32_t FX_BIDICLASSBITS = 6;
constexpr uint32_t FX_BIDICLASSBITSMASK = 0x1F << FX_BIDICLASSBITS;
diff --git a/core/fxcrt/fx_ucddata.cpp b/core/fxcrt/fx_ucddata.cpp
index 5e3d3afbd4..1f28bfbd37 100644
--- a/core/fxcrt/fx_ucddata.cpp
+++ b/core/fxcrt/fx_ucddata.cpp
@@ -4,7 +4,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/fx_memory.h"
#include "core/fxcrt/fx_ucd.h"
const uint32_t kTextLayoutCodeProperties[] = {
diff --git a/core/fxcrt/fxcrt_posix.cpp b/core/fxcrt/fxcrt_posix.cpp
index 4d867dd688..c206268029 100644
--- a/core/fxcrt/fxcrt_posix.cpp
+++ b/core/fxcrt/fxcrt_posix.cpp
@@ -8,7 +8,6 @@
#include <memory>
-#include "core/fxcrt/fx_basic.h"
#include "third_party/base/ptr_util.h"
#ifndef O_BINARY
diff --git a/core/fxcrt/ifxcrt_fileaccess.h b/core/fxcrt/ifxcrt_fileaccess.h
index 340c2d1eeb..f4c686abd5 100644
--- a/core/fxcrt/ifxcrt_fileaccess.h
+++ b/core/fxcrt/ifxcrt_fileaccess.h
@@ -10,8 +10,9 @@
#include <algorithm>
#include <memory>
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_safe_types.h"
+#include "core/fxcrt/fx_stream.h"
+#include "core/fxcrt/fx_string.h"
class IFXCRT_FileAccess {
public:
diff --git a/core/fxcrt/xml/cfx_saxcontext.h b/core/fxcrt/xml/cfx_saxcontext.h
index fcc889f7a3..f66c76c9cc 100644
--- a/core/fxcrt/xml/cfx_saxcontext.h
+++ b/core/fxcrt/xml/cfx_saxcontext.h
@@ -9,7 +9,6 @@
#include <sstream>
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/xml/cfx_saxreader.h"
diff --git a/core/fxcrt/xml/cfx_saxreader.cpp b/core/fxcrt/xml/cfx_saxreader.cpp
index 42bf510c19..641dc08688 100644
--- a/core/fxcrt/xml/cfx_saxreader.cpp
+++ b/core/fxcrt/xml/cfx_saxreader.cpp
@@ -9,6 +9,7 @@
#include <algorithm>
#include <utility>
+#include "core/fxcrt/fx_stream.h"
#include "core/fxcrt/xml/cfx_saxreaderhandler.h"
#include "third_party/base/ptr_util.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fxcrt/xml/cfx_saxreader.h b/core/fxcrt/xml/cfx_saxreader.h
index 9f1f324062..3db1c7c80c 100644
--- a/core/fxcrt/xml/cfx_saxreader.h
+++ b/core/fxcrt/xml/cfx_saxreader.h
@@ -11,10 +11,12 @@
#include <stack>
#include <vector>
-#include "core/fxcrt/fx_basic.h"
+#include "core/fxcrt/cfx_retain_ptr.h"
+#include "core/fxcrt/fx_string.h"
class CFX_SAXCommentContext;
class CFX_SAXContext;
+class IFX_SeekableReadStream;
enum class CFX_SaxMode;
class CFX_SAXItem {
diff --git a/core/fxcrt/xml/cfx_xmlparser.cpp b/core/fxcrt/xml/cfx_xmlparser.cpp
index 884f6fc477..ce45481512 100644
--- a/core/fxcrt/xml/cfx_xmlparser.cpp
+++ b/core/fxcrt/xml/cfx_xmlparser.cpp
@@ -6,7 +6,6 @@
#include "core/fxcrt/xml/cfx_xmlparser.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/xml/cfx_xmlchardata.h"
#include "core/fxcrt/xml/cfx_xmlelement.h"
#include "core/fxcrt/xml/cfx_xmlinstruction.h"
diff --git a/core/fxcrt/xml/cxml_element.h b/core/fxcrt/xml/cxml_element.h
index d708032adb..a4b4b14129 100644
--- a/core/fxcrt/xml/cxml_element.h
+++ b/core/fxcrt/xml/cxml_element.h
@@ -10,7 +10,6 @@
#include <memory>
#include <vector>
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/xml/cxml_attrmap.h"
#include "core/fxcrt/xml/cxml_object.h"
diff --git a/core/fxcrt/xml/cxml_object.h b/core/fxcrt/xml/cxml_object.h
index e7f23aa988..d009359932 100644
--- a/core/fxcrt/xml/cxml_object.h
+++ b/core/fxcrt/xml/cxml_object.h
@@ -7,8 +7,6 @@
#ifndef CORE_FXCRT_XML_CXML_OBJECT_H_
#define CORE_FXCRT_XML_CXML_OBJECT_H_
-#include "core/fxcrt/fx_basic.h"
-
class CXML_Content;
class CXML_Element;
diff --git a/core/fxge/cfx_cliprgn.h b/core/fxge/cfx_cliprgn.h
index 866af9b205..0dfc4991fd 100644
--- a/core/fxge/cfx_cliprgn.h
+++ b/core/fxge/cfx_cliprgn.h
@@ -7,6 +7,7 @@
#ifndef CORE_FXGE_CFX_CLIPRGN_H_
#define CORE_FXGE_CFX_CLIPRGN_H_
+#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/fx_coordinates.h"
class CFX_DIBitmap;
diff --git a/core/fxge/cfx_folderfontinfo.cpp b/core/fxge/cfx_folderfontinfo.cpp
index c82d55982a..f4f57e4b05 100644
--- a/core/fxge/cfx_folderfontinfo.cpp
+++ b/core/fxge/cfx_folderfontinfo.cpp
@@ -10,6 +10,7 @@
#include <utility>
#include "core/fxcrt/fx_codepage.h"
+#include "core/fxcrt/fx_stream.h"
#include "core/fxge/cfx_fontmapper.h"
#include "core/fxge/fx_font.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fxge/cfx_font.cpp b/core/fxge/cfx_font.cpp
index 8b34819e05..7a51df1b85 100644
--- a/core/fxge/cfx_font.cpp
+++ b/core/fxge/cfx_font.cpp
@@ -14,6 +14,7 @@
#include "core/fpdfapi/font/cpdf_font.h"
#include "core/fxcrt/fx_codepage.h"
+#include "core/fxcrt/fx_stream.h"
#include "core/fxge/cfx_facecache.h"
#include "core/fxge/cfx_fontcache.h"
#include "core/fxge/cfx_fontmgr.h"
diff --git a/core/fxge/dib/cfx_dibitmap.h b/core/fxge/dib/cfx_dibitmap.h
index 2b5555befc..fb676691ef 100644
--- a/core/fxge/dib/cfx_dibitmap.h
+++ b/core/fxge/dib/cfx_dibitmap.h
@@ -9,7 +9,6 @@
#include "core/fxcrt/cfx_maybe_owned.h"
#include "core/fxcrt/cfx_retain_ptr.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxge/dib/cfx_dibsource.h"
#include "third_party/base/stl_util.h"
diff --git a/core/fxge/dib/cfx_dibsource.h b/core/fxge/dib/cfx_dibsource.h
index 8b6d960de6..2315318ccb 100644
--- a/core/fxge/dib/cfx_dibsource.h
+++ b/core/fxge/dib/cfx_dibsource.h
@@ -10,8 +10,8 @@
#include <memory>
#include "core/fxcrt/cfx_retain_ptr.h"
-#include "core/fxcrt/fx_basic.h"
#include "core/fxcrt/fx_coordinates.h"
+#include "core/fxcrt/fx_memory.h"
#include "core/fxge/fx_dib.h"
enum FXDIB_Channel {
diff --git a/core/fxge/dib/cfx_imagestretcher.h b/core/fxge/dib/cfx_imagestretcher.h
index f31669b866..84411015dd 100644
--- a/core/fxge/dib/cfx_imagestretcher.h
+++ b/core/fxge/dib/cfx_imagestretcher.h
@@ -10,7 +10,9 @@
#include <memory>
#include "core/fxcrt/cfx_retain_ptr.h"
+#include "core/fxcrt/cfx_unowned_ptr.h"
#include "core/fxcrt/fx_coordinates.h"
+#include "core/fxcrt/fx_memory.h"
#include "core/fxge/dib/ifx_scanlinecomposer.h"
#include "core/fxge/fx_dib.h"
diff --git a/core/fxge/dib/cfx_imagetransformer.h b/core/fxge/dib/cfx_imagetransformer.h
index 694c44c932..0524a0c713 100644
--- a/core/fxge/dib/cfx_imagetransformer.h
+++ b/core/fxge/dib/cfx_imagetransformer.h
@@ -10,6 +10,7 @@
#include <memory>
#include "core/fxcrt/cfx_retain_ptr.h"
+#include "core/fxcrt/cfx_unowned_ptr.h"
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxge/dib/cfx_bitmapstorer.h"
#include "core/fxge/dib/cfx_dibitmap.h"
diff --git a/core/fxge/dib/cstretchengine.h b/core/fxge/dib/cstretchengine.h
index dd207af30d..14c0975023 100644
--- a/core/fxge/dib/cstretchengine.h
+++ b/core/fxge/dib/cstretchengine.h
@@ -9,6 +9,7 @@
#include <vector>
+#include "core/fxcrt/cfx_retain_ptr.h"
#include "core/fxcrt/cfx_unowned_ptr.h"
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxge/fx_dib.h"
diff --git a/core/fxge/fx_font.h b/core/fxge/fx_font.h
index 5ef1a7d65e..57fdb54821 100644
--- a/core/fxge/fx_font.h
+++ b/core/fxge/fx_font.h
@@ -25,6 +25,7 @@ class CFX_FaceCache;
class CFX_GlyphBitmap;
class CFX_PathData;
class CFX_SizeGlyphCache;
+class IFX_SeekableReadStream;
#if defined _SKIA_SUPPORT_ || defined _SKIA_SUPPORT_PATHS_
class SkTypeface;
diff --git a/core/fxge/skia/fx_skia_device.cpp b/core/fxge/skia/fx_skia_device.cpp
index 05a4c3a9ed..754a5104c8 100644
--- a/core/fxge/skia/fx_skia_device.cpp
+++ b/core/fxge/skia/fx_skia_device.cpp
@@ -16,6 +16,7 @@
#include "core/fpdfapi/parser/cpdf_dictionary.h"
#include "core/fpdfapi/parser/cpdf_stream_acc.h"
#include "core/fxcodec/fx_codec.h"
+#include "core/fxcrt/fx_extension.h"
#include "core/fxcrt/fx_memory.h"
#include "core/fxge/cfx_defaultrenderdevice.h"
#include "core/fxge/cfx_graphstatedata.h"