summaryrefslogtreecommitdiff
path: root/core/src
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2015-06-15 16:44:14 -0700
committerLei Zhang <thestig@chromium.org>2015-06-15 16:44:14 -0700
commit0ef0de55657db8a83372ad8eb22d84c5893afc4c (patch)
tree76082cf24870d47ebb6176a40d1979ef68c365d4 /core/src
parent9869e6782f247177955eab27d3d480026365e75b (diff)
downloadpdfium-0ef0de55657db8a83372ad8eb22d84c5893afc4c.tar.xz
Do some IWYU cleanups.
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1176333002.
Diffstat (limited to 'core/src')
-rw-r--r--core/src/fdrm/crypto/fx_crypt.cpp2
-rw-r--r--core/src/fdrm/crypto/fx_crypt_aes.cpp1
-rw-r--r--core/src/fdrm/crypto/fx_crypt_sha.cpp1
-rw-r--r--core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp2
-rw-r--r--core/src/fpdfapi/fpdf_edit/fpdf_edit_create.cpp2
-rw-r--r--core/src/fpdfapi/fpdf_parser/fpdf_parser_filters.cpp3
-rw-r--r--core/src/fpdfapi/fpdf_render/fpdf_render.cpp6
-rw-r--r--core/src/fpdfdoc/doc_form.cpp1
-rw-r--r--core/src/fpdfdoc/doc_link.cpp1
-rw-r--r--core/src/fpdftext/fpdf_text.cpp5
-rw-r--r--core/src/fpdftext/fpdf_text_int.cpp13
-rw-r--r--core/src/fpdftext/fpdf_text_search.cpp1
-rw-r--r--core/src/fpdftext/unicodenormalization.cpp3
-rw-r--r--core/src/fxcodec/codec/fx_codec_jbig.cpp1
-rw-r--r--core/src/fxcodec/codec/fx_codec_jpx_opj.cpp2
-rw-r--r--core/src/fxcodec/jbig2/JBig2_Context.h9
-rw-r--r--core/src/fxcodec/jbig2/JBig2_GeneralDecoder.h11
-rw-r--r--core/src/fxcodec/jbig2/JBig2_Image.cpp1
-rw-r--r--core/src/fxcodec/lcms2/lcms2-2.6/src/cmserr.c2
-rw-r--r--core/src/fxcrt/extension.h1
-rw-r--r--core/src/fxcrt/fx_arabic.cpp3
-rw-r--r--core/src/fxcrt/fx_arabic.h2
-rw-r--r--core/src/fxcrt/fx_basic_bstring_unittest.cpp4
-rw-r--r--core/src/fxcrt/fx_basic_coords.cpp3
-rw-r--r--core/src/fxcrt/fx_basic_gcc.cpp3
-rw-r--r--core/src/fxcrt/fx_basic_maps.cpp3
-rw-r--r--core/src/fxcrt/fx_basic_plex.cpp3
-rw-r--r--core/src/fxcrt/fx_extension.cpp2
-rw-r--r--core/src/fxcrt/fx_ucddata.cpp3
-rw-r--r--core/src/fxcrt/fx_unicode.cpp3
-rw-r--r--core/src/fxcrt/fxcrt_platforms.cpp3
-rw-r--r--core/src/fxcrt/fxcrt_posix.cpp3
-rw-r--r--core/src/fxcrt/fxcrt_windows.cpp3
-rw-r--r--core/src/fxcrt/plex.h2
-rw-r--r--core/src/fxcrt/xml_int.h2
-rw-r--r--core/src/fxge/android/fx_fpf.h1
-rw-r--r--core/src/fxge/apple/fx_apple_platform.cpp2
-rw-r--r--core/src/fxge/ge/fx_ge_path.cpp2
38 files changed, 72 insertions, 43 deletions
diff --git a/core/src/fdrm/crypto/fx_crypt.cpp b/core/src/fdrm/crypto/fx_crypt.cpp
index 2076cbbccc..83a420ad38 100644
--- a/core/src/fdrm/crypto/fx_crypt.cpp
+++ b/core/src/fdrm/crypto/fx_crypt.cpp
@@ -5,8 +5,6 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "../../../include/fdrm/fx_crypt.h"
-#include "../../../include/fxcrt/fx_basic.h"
-#include "../../../include/fxcrt/fx_safe_types.h"
#ifdef __cplusplus
extern "C" {
diff --git a/core/src/fdrm/crypto/fx_crypt_aes.cpp b/core/src/fdrm/crypto/fx_crypt_aes.cpp
index 7b5064fd9e..4bd87105aa 100644
--- a/core/src/fdrm/crypto/fx_crypt_aes.cpp
+++ b/core/src/fdrm/crypto/fx_crypt_aes.cpp
@@ -4,7 +4,6 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../../include/fxcrt/fx_basic.h"
#include "../../../include/fdrm/fx_crypt.h"
#ifdef __cplusplus
extern "C" {
diff --git a/core/src/fdrm/crypto/fx_crypt_sha.cpp b/core/src/fdrm/crypto/fx_crypt_sha.cpp
index 012cbdb29b..b22348a03c 100644
--- a/core/src/fdrm/crypto/fx_crypt_sha.cpp
+++ b/core/src/fdrm/crypto/fx_crypt_sha.cpp
@@ -4,7 +4,6 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../../include/fxcrt/fx_basic.h"
#include "../../../include/fdrm/fx_crypt.h"
#ifdef __cplusplus
extern "C" {
diff --git a/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp b/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp
index 948908e5eb..65f78dab13 100644
--- a/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp
+++ b/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp
@@ -7,8 +7,8 @@
#include "../../../include/fpdfapi/fpdf_page.h"
#include "../../../include/fpdfapi/fpdf_serial.h"
#include "../../../include/fpdfapi/fpdf_module.h"
-#include "../../../include/fxcodec/fx_codec.h"
#include "../fpdf_page/pageint.h"
+
CFX_ByteTextBuf& operator << (CFX_ByteTextBuf& ar, CFX_AffineMatrix& matrix)
{
ar << matrix.a << " " << matrix.b << " " << matrix.c << " " << matrix.d << " " << matrix.e << " " << matrix.f;
diff --git a/core/src/fpdfapi/fpdf_edit/fpdf_edit_create.cpp b/core/src/fpdfapi/fpdf_edit/fpdf_edit_create.cpp
index 93531de1ad..b7eb05f452 100644
--- a/core/src/fpdfapi/fpdf_edit/fpdf_edit_create.cpp
+++ b/core/src/fpdfapi/fpdf_edit/fpdf_edit_create.cpp
@@ -4,8 +4,10 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
+#include "../../../include/fxcrt/fx_ext.h"
#include "../../../include/fpdfapi/fpdf_serial.h"
#include "editint.h"
+
#define PDF_OBJECTSTREAM_MAXLENGTH (256 * 1024)
#define PDF_XREFSTREAM_MAXSIZE 10000
extern void FlateEncode(const uint8_t* src_buf, FX_DWORD src_data, uint8_t*& dest_buf, FX_DWORD& dest_size);
diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_filters.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_filters.cpp
index 6c33d82ca3..507a429eee 100644
--- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_filters.cpp
+++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_filters.cpp
@@ -4,11 +4,12 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../fx_zlib.h"
#include "../../../include/fpdfapi/fpdf_parser.h"
#include "../../../include/fxcodec/fx_codec.h"
#include "../../../include/fpdfapi/fpdf_module.h"
+#include "../../fx_zlib.h"
#include "filters_int.h"
+
CFX_DataFilter::CFX_DataFilter()
{
m_bEOF = FALSE;
diff --git a/core/src/fpdfapi/fpdf_render/fpdf_render.cpp b/core/src/fpdfapi/fpdf_render/fpdf_render.cpp
index 01bec5bcb7..608e124118 100644
--- a/core/src/fpdfapi/fpdf_render/fpdf_render.cpp
+++ b/core/src/fpdfapi/fpdf_render/fpdf_render.cpp
@@ -4,12 +4,12 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../../include/fpdfapi/fpdf_render.h"
#include "../../../include/fpdfapi/fpdf_module.h"
-#include "../fpdf_page/pageint.h"
+#include "../../../include/fpdfapi/fpdf_render.h"
#include "../../../include/fxge/fx_ge.h"
-#include "../../../include/fxcodec/fx_codec.h"
+#include "../fpdf_page/pageint.h"
#include "render_int.h"
+
CPDF_DocRenderData::CPDF_DocRenderData(CPDF_Document* pPDFDoc)
: m_pPDFDoc(pPDFDoc)
, m_pFontCache(NULL)
diff --git a/core/src/fpdfdoc/doc_form.cpp b/core/src/fpdfdoc/doc_form.cpp
index 4124c8f6b4..2b59bee6ee 100644
--- a/core/src/fpdfdoc/doc_form.cpp
+++ b/core/src/fpdfdoc/doc_form.cpp
@@ -5,7 +5,6 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "../../include/fpdfdoc/fpdf_doc.h"
-#include "../../include/fxcrt/fx_xml.h"
#include "doc_utils.h"
const int nMaxRecursion = 32;
diff --git a/core/src/fpdfdoc/doc_link.cpp b/core/src/fpdfdoc/doc_link.cpp
index 56c3ed2e37..fdae96ac2e 100644
--- a/core/src/fpdfdoc/doc_link.cpp
+++ b/core/src/fpdfdoc/doc_link.cpp
@@ -5,7 +5,6 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "../../include/fpdfdoc/fpdf_doc.h"
-#include "../../include/fxcrt/fx_safe_types.h"
CPDF_LinkList::~CPDF_LinkList()
{
diff --git a/core/src/fpdftext/fpdf_text.cpp b/core/src/fpdftext/fpdf_text.cpp
index 38715e579f..30934f6820 100644
--- a/core/src/fpdftext/fpdf_text.cpp
+++ b/core/src/fpdftext/fpdf_text.cpp
@@ -7,8 +7,11 @@
#include "../../include/fpdfapi/fpdf_page.h"
#include "../../include/fpdfapi/fpdf_pageobj.h"
#include "../../include/fpdftext/fpdf_text.h"
-#include "txtproc.h"
+#include "../../include/fxcrt/fx_arb.h"
+#include "../../include/fxcrt/fx_ucd.h"
#include "text_int.h"
+#include "txtproc.h"
+
extern const FX_CHAR* FCS_GetAltStr(FX_WCHAR);
CFX_ByteString CharFromUnicodeAlt(FX_WCHAR unicode, int destcp, const FX_CHAR* defchar)
{
diff --git a/core/src/fpdftext/fpdf_text_int.cpp b/core/src/fpdftext/fpdf_text_int.cpp
index b5e6213ba1..712de4893c 100644
--- a/core/src/fpdftext/fpdf_text_int.cpp
+++ b/core/src/fpdftext/fpdf_text_int.cpp
@@ -4,13 +4,16 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fpdfapi/fpdf_resource.h"
-#include "../../include/fpdfapi/fpdf_pageobj.h"
-#include "../../include/fpdftext/fpdf_text.h"
-#include "../../include/fpdfapi/fpdf_page.h"
-#include "../../include/fpdfapi/fpdf_module.h"
#include <ctype.h>
#include <algorithm>
+
+#include "../../include/fpdfapi/fpdf_module.h"
+#include "../../include/fpdfapi/fpdf_page.h"
+#include "../../include/fpdfapi/fpdf_pageobj.h"
+#include "../../include/fpdfapi/fpdf_resource.h"
+#include "../../include/fpdftext/fpdf_text.h"
+#include "../../include/fxcrt/fx_arb.h"
+#include "../../include/fxcrt/fx_ucd.h"
#include "text_int.h"
namespace {
diff --git a/core/src/fpdftext/fpdf_text_search.cpp b/core/src/fpdftext/fpdf_text_search.cpp
index 07f493ea98..21a2564ae6 100644
--- a/core/src/fpdftext/fpdf_text_search.cpp
+++ b/core/src/fpdftext/fpdf_text_search.cpp
@@ -5,7 +5,6 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "../../include/fpdfapi/fpdf_pageobj.h"
-#include "../../include/fpdftext/fpdf_text.h"
#include "../../include/fpdfapi/fpdf_page.h"
class CPDF_TextStream
{
diff --git a/core/src/fpdftext/unicodenormalization.cpp b/core/src/fpdftext/unicodenormalization.cpp
index fa3d8120f9..468900c7d8 100644
--- a/core/src/fpdftext/unicodenormalization.cpp
+++ b/core/src/fpdftext/unicodenormalization.cpp
@@ -4,7 +4,8 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fpdftext/fpdf_text.h"
+#include "../../include/fxcrt/fx_string.h"
+
extern const FX_WCHAR g_UnicodeData_Normalization[];
extern const FX_WCHAR g_UnicodeData_Normalization_Map1[];
extern const FX_WCHAR g_UnicodeData_Normalization_Map2[];
diff --git a/core/src/fxcodec/codec/fx_codec_jbig.cpp b/core/src/fxcodec/codec/fx_codec_jbig.cpp
index d9532202ff..7a69a24d40 100644
--- a/core/src/fxcodec/codec/fx_codec_jbig.cpp
+++ b/core/src/fxcodec/codec/fx_codec_jbig.cpp
@@ -6,6 +6,7 @@
#include "../../../include/fxcodec/fx_codec.h"
#include "codec_int.h"
+
CCodec_Jbig2Context::CCodec_Jbig2Context()
{
FXSYS_memset(this, 0, sizeof(CCodec_Jbig2Context));
diff --git a/core/src/fxcodec/codec/fx_codec_jpx_opj.cpp b/core/src/fxcodec/codec/fx_codec_jpx_opj.cpp
index ce82960340..4f548eaa80 100644
--- a/core/src/fxcodec/codec/fx_codec_jpx_opj.cpp
+++ b/core/src/fxcodec/codec/fx_codec_jpx_opj.cpp
@@ -8,9 +8,9 @@
#include <limits>
#include "../../../include/fxcodec/fx_codec.h"
-#include "codec_int.h"
#include "../fx_libopenjpeg/libopenjpeg20/openjpeg.h"
#include "../lcms2/include/fx_lcms2.h"
+#include "codec_int.h"
static void fx_error_callback(const char *msg, void *client_data)
{
diff --git a/core/src/fxcodec/jbig2/JBig2_Context.h b/core/src/fxcodec/jbig2/JBig2_Context.h
index b12853accf..6e47a8a912 100644
--- a/core/src/fxcodec/jbig2/JBig2_Context.h
+++ b/core/src/fxcodec/jbig2/JBig2_Context.h
@@ -1,19 +1,22 @@
// 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 _JBIG2_CONTEXT_H_
#define _JBIG2_CONTEXT_H_
+
+#include <list>
+#include <utility>
+
#include "JBig2_Module.h"
#include "JBig2_List.h"
#include "JBig2_Segment.h"
#include "JBig2_Page.h"
#include "JBig2_GeneralDecoder.h"
#include "../../../include/fxcodec/fx_codec_def.h"
-#include "../../../include/fxcrt/fx_basic.h"
-#include <utility>
+
typedef std::pair<uint8_t*, CJBig2_SymbolDict*> CJBig2_CachePair;
typedef enum {
JBIG2_OUT_OF_PAGE = 0,
diff --git a/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.h b/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.h
index 45e2940d3a..2bd2ceac95 100644
--- a/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.h
+++ b/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.h
@@ -1,18 +1,19 @@
// 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 _JBIG2_GENERAL_DECODER_H_
#define _JBIG2_GENERAL_DECODER_H_
+
#include "../../../include/fxcodec/fx_codec_def.h"
-#include "../../../include/fxcrt/fx_basic.h"
-#include "JBig2_Define.h"
-#include "JBig2_SymbolDict.h"
+#include "../../../include/fxcrt/fx_coordinates.h"
#include "JBig2_ArithDecoder.h"
#include "JBig2_ArithIntDecoder.h"
-#include "../../../include/fxcrt/fx_coordinates.h"
+#include "JBig2_Define.h"
+#include "JBig2_SymbolDict.h"
+
class CJBig2_HuffmanTable;
class CJBig2_Image;
class CJBig2_PatternDict;
diff --git a/core/src/fxcodec/jbig2/JBig2_Image.cpp b/core/src/fxcodec/jbig2/JBig2_Image.cpp
index 044ccf7410..9ef4464ef0 100644
--- a/core/src/fxcodec/jbig2/JBig2_Image.cpp
+++ b/core/src/fxcodec/jbig2/JBig2_Image.cpp
@@ -6,7 +6,6 @@
#include <limits.h>
-#include "../../../include/fxcrt/fx_basic.h"
#include "../../../include/fxcrt/fx_coordinates.h"
#include "../../../include/fxcrt/fx_safe_types.h"
#include "JBig2_Image.h"
diff --git a/core/src/fxcodec/lcms2/lcms2-2.6/src/cmserr.c b/core/src/fxcodec/lcms2/lcms2-2.6/src/cmserr.c
index a32b6e2303..b008b529a6 100644
--- a/core/src/fxcodec/lcms2/lcms2-2.6/src/cmserr.c
+++ b/core/src/fxcodec/lcms2/lcms2-2.6/src/cmserr.c
@@ -251,8 +251,8 @@ cmsBool _cmsRegisterMemHandlerPlugin(cmsContext ContextID, cmsPluginBase *Data)
return TRUE;
}
#else
-#include "../../../../../include/fxcrt/fx_system.h"
#include "../../../../../include/fxcrt/fx_memory.h"
+#include "../../../../../include/fxcrt/fx_system.h"
cmsBool _cmsRegisterMemHandlerPlugin(cmsContext ContextID, cmsPluginBase* Plugin)
{
diff --git a/core/src/fxcrt/extension.h b/core/src/fxcrt/extension.h
index 2de553acf3..ba42916599 100644
--- a/core/src/fxcrt/extension.h
+++ b/core/src/fxcrt/extension.h
@@ -7,6 +7,7 @@
#ifndef CORE_SRC_FXCRT_EXTENSION_H_
#define CORE_SRC_FXCRT_EXTENSION_H_
+#include "../../include/fxcrt/fx_basic.h"
#include "../../include/fxcrt/fx_safe_types.h"
class IFXCRT_FileAccess
diff --git a/core/src/fxcrt/fx_arabic.cpp b/core/src/fxcrt/fx_arabic.cpp
index 27da674e2f..94b514bd0d 100644
--- a/core/src/fxcrt/fx_arabic.cpp
+++ b/core/src/fxcrt/fx_arabic.cpp
@@ -4,8 +4,9 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_ucd.h"
#include "fx_arabic.h"
+
extern const FX_DWORD gs_FX_TextLayout_CodeProperties[65536];
IFX_BidiChar* IFX_BidiChar::Create()
{
diff --git a/core/src/fxcrt/fx_arabic.h b/core/src/fxcrt/fx_arabic.h
index 870136148c..e7e6a28c43 100644
--- a/core/src/fxcrt/fx_arabic.h
+++ b/core/src/fxcrt/fx_arabic.h
@@ -7,6 +7,8 @@
#ifndef CORE_SRC_FXCRT_FX_ARABIC_H_
#define CORE_SRC_FXCRT_FX_ARABIC_H_
+#include "../../include/fxcrt/fx_arb.h"
+
class CFX_BidiChar final : public IFX_BidiChar
{
public:
diff --git a/core/src/fxcrt/fx_basic_bstring_unittest.cpp b/core/src/fxcrt/fx_basic_bstring_unittest.cpp
index 9d8f376544..f865602b08 100644
--- a/core/src/fxcrt/fx_basic_bstring_unittest.cpp
+++ b/core/src/fxcrt/fx_basic_bstring_unittest.cpp
@@ -2,9 +2,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "testing/gtest/include/gtest/gtest.h"
#include "../../../testing/fx_string_testhelpers.h"
-#include "../../include/fxcrt/fx_basic.h"
+#include "../../include/fxcrt/fx_string.h"
+#include "testing/gtest/include/gtest/gtest.h"
TEST(fxcrt, ByteStringOperatorSubscript) {
// CFX_ByteString includes the NUL terminator for non-empty strings.
diff --git a/core/src/fxcrt/fx_basic_coords.cpp b/core/src/fxcrt/fx_basic_coords.cpp
index 67e2032700..2e830809b8 100644
--- a/core/src/fxcrt/fx_basic_coords.cpp
+++ b/core/src/fxcrt/fx_basic_coords.cpp
@@ -5,7 +5,10 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include <limits.h>
+
+#include "../../include/fxcrt/fx_coordinates.h"
#include "../../include/fxcrt/fx_ext.h"
+
void FX_RECT::Normalize()
{
if (left > right) {
diff --git a/core/src/fxcrt/fx_basic_gcc.cpp b/core/src/fxcrt/fx_basic_gcc.cpp
index b5a81ad5a9..e4416e95b5 100644
--- a/core/src/fxcrt/fx_basic_gcc.cpp
+++ b/core/src/fxcrt/fx_basic_gcc.cpp
@@ -5,7 +5,10 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include <limits>
+
#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_string.h"
+
template <class T, class STR_T>
T FXSYS_StrToInt(STR_T str)
{
diff --git a/core/src/fxcrt/fx_basic_maps.cpp b/core/src/fxcrt/fx_basic_maps.cpp
index 8a886f88ea..e34acb088d 100644
--- a/core/src/fxcrt/fx_basic_maps.cpp
+++ b/core/src/fxcrt/fx_basic_maps.cpp
@@ -4,8 +4,9 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_basic.h"
#include "plex.h"
+
static void ConstructElement(CFX_ByteString* pNewData)
{
new (pNewData) CFX_ByteString();
diff --git a/core/src/fxcrt/fx_basic_plex.cpp b/core/src/fxcrt/fx_basic_plex.cpp
index 802429600a..c9088bc93d 100644
--- a/core/src/fxcrt/fx_basic_plex.cpp
+++ b/core/src/fxcrt/fx_basic_plex.cpp
@@ -4,8 +4,9 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_basic.h"
+#include "../../include/fxcrt/fx_memory.h"
#include "plex.h"
+
CFX_Plex* CFX_Plex::Create(CFX_Plex*& pHead, FX_DWORD nMax, FX_DWORD cbElement)
{
CFX_Plex* p = (CFX_Plex*)FX_Alloc(uint8_t, sizeof(CFX_Plex) + nMax * cbElement);
diff --git a/core/src/fxcrt/fx_extension.cpp b/core/src/fxcrt/fx_extension.cpp
index 98f70cb2b9..4662e8f893 100644
--- a/core/src/fxcrt/fx_extension.cpp
+++ b/core/src/fxcrt/fx_extension.cpp
@@ -4,6 +4,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
+#include "../../include/fxcrt/fx_basic.h"
#include "../../include/fxcrt/fx_ext.h"
#include "extension.h"
#if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
@@ -11,6 +12,7 @@
#else
#include <ctime>
#endif
+
FX_HFILE FX_File_Open(const CFX_ByteStringC& fileName, FX_DWORD dwMode)
{
IFXCRT_FileAccess* pFA = FXCRT_FileAccess_Create();
diff --git a/core/src/fxcrt/fx_ucddata.cpp b/core/src/fxcrt/fx_ucddata.cpp
index d3ea5cc3be..e632769988 100644
--- a/core/src/fxcrt/fx_ucddata.cpp
+++ b/core/src/fxcrt/fx_ucddata.cpp
@@ -4,7 +4,8 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_system.h"
+
extern const FX_DWORD gs_FX_TextLayout_CodeProperties[65536] = {
0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe8ae5, 0xfffe9b5c, 0xfffe9ada, 0xfffe9b1a, 0xfffe9b5b, 0xfffe9a93, 0xfffe9a93,
0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9a93, 0xfffe9b53, 0xfffe9b53, 0xfffe9b53, 0xfffe9ad3,
diff --git a/core/src/fxcrt/fx_unicode.cpp b/core/src/fxcrt/fx_unicode.cpp
index 08a7443289..d66a58a9b3 100644
--- a/core/src/fxcrt/fx_unicode.cpp
+++ b/core/src/fxcrt/fx_unicode.cpp
@@ -4,7 +4,8 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_ucd.h"
+
extern const FX_DWORD gs_FX_TextLayout_CodeProperties[65536];
extern const FX_WCHAR gs_FX_TextLayout_VerticalMirror[64];
extern const FX_WCHAR gs_FX_TextLayout_BidiMirror[512];
diff --git a/core/src/fxcrt/fxcrt_platforms.cpp b/core/src/fxcrt/fxcrt_platforms.cpp
index a6ec964140..e7182943be 100644
--- a/core/src/fxcrt/fxcrt_platforms.cpp
+++ b/core/src/fxcrt/fxcrt_platforms.cpp
@@ -4,8 +4,9 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_basic.h"
#include "fxcrt_platforms.h"
+
#if (_FXM_PLATFORM_ != _FXM_PLATFORM_WINDOWS_ && _FXM_PLATFORM_ != _FXM_PLATFORM_LINUX_ && _FXM_PLATFORM_ != _FXM_PLATFORM_APPLE_ && _FXM_PLATFORM_ != _FXM_PLATFORM_ANDROID_)
IFXCRT_FileAccess* FXCRT_FileAccess_Create()
{
diff --git a/core/src/fxcrt/fxcrt_posix.cpp b/core/src/fxcrt/fxcrt_posix.cpp
index 2ae29cbc0e..84646efd5c 100644
--- a/core/src/fxcrt/fxcrt_posix.cpp
+++ b/core/src/fxcrt/fxcrt_posix.cpp
@@ -4,8 +4,9 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_basic.h"
#include "fxcrt_posix.h"
+
#if _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_ || _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_ || _FXM_PLATFORM_ == _FXM_PLATFORM_ANDROID_
IFXCRT_FileAccess* FXCRT_FileAccess_Create()
{
diff --git a/core/src/fxcrt/fxcrt_windows.cpp b/core/src/fxcrt/fxcrt_windows.cpp
index c16f25624a..34d918b6fa 100644
--- a/core/src/fxcrt/fxcrt_windows.cpp
+++ b/core/src/fxcrt/fxcrt_windows.cpp
@@ -4,8 +4,9 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../include/fxcrt/fx_ext.h"
+#include "../../include/fxcrt/fx_string.h"
#include "fxcrt_windows.h"
+
#if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
FX_BOOL FX_File_Exist(const CFX_ByteStringC& fileName)
{
diff --git a/core/src/fxcrt/plex.h b/core/src/fxcrt/plex.h
index a4ac4f7c48..baf27f5368 100644
--- a/core/src/fxcrt/plex.h
+++ b/core/src/fxcrt/plex.h
@@ -6,6 +6,8 @@
#ifndef CORE_SRC_FXCRT_PLEX_H_
#define CORE_SRC_FXCRT_PLEX_H_
+#include "../../include/fxcrt/fx_system.h"
+
struct CFX_Plex {
CFX_Plex* pNext;
void* data()
diff --git a/core/src/fxcrt/xml_int.h b/core/src/fxcrt/xml_int.h
index 9469a758cb..109c7a43d2 100644
--- a/core/src/fxcrt/xml_int.h
+++ b/core/src/fxcrt/xml_int.h
@@ -7,6 +7,8 @@
#ifndef CORE_SRC_FXCRT_XML_INT_H_
#define CORE_SRC_FXCRT_XML_INT_H_
+#include "../../include/fxcrt/fx_stream.h"
+
class CXML_DataBufAcc : public IFX_BufferRead
{
public:
diff --git a/core/src/fxge/android/fx_fpf.h b/core/src/fxge/android/fx_fpf.h
index caf3a9f909..a484c1e076 100644
--- a/core/src/fxge/android/fx_fpf.h
+++ b/core/src/fxge/android/fx_fpf.h
@@ -7,7 +7,6 @@
#ifndef CORE_SRC_FXGE_ANDROID_FX_FPF_H_
#define CORE_SRC_FXGE_ANDROID_FX_FPF_H_
-#include "../../../include/fxcrt/fx_ext.h"
#include "../../../include/fxge/fpf.h"
#include "../../../include/fxge/fx_freetype.h"
#include "../../../include/fxge/fx_ge.h"
diff --git a/core/src/fxge/apple/fx_apple_platform.cpp b/core/src/fxge/apple/fx_apple_platform.cpp
index 5186ed449b..07c5b6cf98 100644
--- a/core/src/fxge/apple/fx_apple_platform.cpp
+++ b/core/src/fxge/apple/fx_apple_platform.cpp
@@ -4,7 +4,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "../../../include/fxcrt/fx_ext.h"
+#include "../../../include/fxcrt/fx_system.h"
#include "../../../include/fxge/fx_ge.h"
#if _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_
#include "apple_int.h"
diff --git a/core/src/fxge/ge/fx_ge_path.cpp b/core/src/fxge/ge/fx_ge_path.cpp
index 96f5762852..ea1d80390b 100644
--- a/core/src/fxge/ge/fx_ge_path.cpp
+++ b/core/src/fxge/ge/fx_ge_path.cpp
@@ -5,7 +5,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "../../../../third_party/base/numerics/safe_math.h"
-#include "../../../include/fxcrt/fx_basic.h"
+#include "../../../include/fxcrt/fx_system.h"
#include "../../../include/fxge/fx_ge.h"
CFX_ClipRgn::CFX_ClipRgn(int width, int height)