Cleanup unchanged values in CFX_TxtBreak

This Cl cleans up some members which are always the same value.

Change-Id: Ic3feeb5cd8c8a8c3de5a7d6ec3628d32efc600ef
Reviewed-on: https://pdfium-review.googlesource.com/3107
Reviewed-by: Nicolás Peña <npm@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
diff --git a/xfa/fgas/layout/cfx_break.cpp b/xfa/fgas/layout/cfx_break.cpp
index 8be1d17..a8280b1 100644
--- a/xfa/fgas/layout/cfx_break.cpp
+++ b/xfa/fgas/layout/cfx_break.cpp
@@ -38,12 +38,16 @@
 
 CFX_Break::~CFX_Break() {}
 
+void CFX_Break::Reset() {
+  m_eCharType = FX_CHARTYPE_Unknown;
+  m_Line[0].Clear();
+  m_Line[1].Clear();
+}
+
 void CFX_Break::SetLayoutStyles(uint32_t dwLayoutStyles) {
   m_dwLayoutStyles = dwLayoutStyles;
   m_bSingleLine = (m_dwLayoutStyles & FX_LAYOUTSTYLE_SingleLine) != 0;
   m_bCombText = (m_dwLayoutStyles & FX_LAYOUTSTYLE_CombText) != 0;
-
-  ResetArabicContext();
 }
 
 void CFX_Break::SetHorizontalScale(int32_t iScale) {
diff --git a/xfa/fgas/layout/cfx_break.h b/xfa/fgas/layout/cfx_break.h
index d1bbde0..631cc5a 100644
--- a/xfa/fgas/layout/cfx_break.h
+++ b/xfa/fgas/layout/cfx_break.h
@@ -32,6 +32,8 @@
  public:
   virtual ~CFX_Break();
 
+  void Reset();
+
   void SetLayoutStyles(uint32_t dwLayoutStyles);
   uint32_t GetLayoutStyles() const { return m_dwLayoutStyles; }
 
@@ -49,7 +51,6 @@
   void SetDefaultChar(wchar_t wch);
 
   virtual void SetBreakStatus() = 0;
-  virtual void ResetArabicContext() {}
 
  protected:
   explicit CFX_Break(uint32_t dwLayoutStyles);
diff --git a/xfa/fgas/layout/fgas_rtfbreak.cpp b/xfa/fgas/layout/fgas_rtfbreak.cpp
index f4faf00..81fbea0 100644
--- a/xfa/fgas/layout/fgas_rtfbreak.cpp
+++ b/xfa/fgas/layout/fgas_rtfbreak.cpp
@@ -723,12 +723,6 @@
   m_iReadyLineIndex = -1;
 }
 
-void CFX_RTFBreak::Reset() {
-  m_eCharType = FX_CHARTYPE_Unknown;
-  m_Line[0].Clear();
-  m_Line[1].Clear();
-}
-
 int32_t CFX_RTFBreak::GetDisplayPos(const FX_RTFTEXTOBJ* pText,
                                     FXTEXT_CHARPOS* pCharPos,
                                     bool bCharCode) const {
diff --git a/xfa/fgas/layout/fgas_rtfbreak.h b/xfa/fgas/layout/fgas_rtfbreak.h
index 681dc58..865b17f 100644
--- a/xfa/fgas/layout/fgas_rtfbreak.h
+++ b/xfa/fgas/layout/fgas_rtfbreak.h
@@ -60,8 +60,6 @@
   const CFX_BreakPiece* GetBreakPieceUnstable(int32_t index) const;
   void ClearBreakPieces();
 
-  void Reset();
-
   int32_t GetDisplayPos(const FX_RTFTEXTOBJ* pText,
                         FXTEXT_CHARPOS* pCharPos,
                         bool bCharCode) const;
diff --git a/xfa/fgas/layout/fgas_textbreak.cpp b/xfa/fgas/layout/fgas_textbreak.cpp
index 8fc425f..4109170 100644
--- a/xfa/fgas/layout/fgas_textbreak.cpp
+++ b/xfa/fgas/layout/fgas_textbreak.cpp
@@ -25,13 +25,8 @@
 
 CFX_TxtBreak::CFX_TxtBreak()
     : CFX_Break(FX_LAYOUTSTYLE_None),
-      m_iArabicContext(1),
-      m_iCurArabicContext(1),
       m_iAlignment(CFX_TxtLineAlignment_Left),
-      m_dwContextCharStyles(0),
-      m_iCombWidth(360000) {
-  ResetArabicContext();
-}
+      m_iCombWidth(360000) {}
 
 CFX_TxtBreak::~CFX_TxtBreak() {}
 
@@ -45,7 +40,6 @@
   ASSERT(iAlignment >= CFX_TxtLineAlignment_Left &&
          iAlignment <= CFX_TxtLineAlignment_Justified);
   m_iAlignment = iAlignment;
-  ResetArabicContext();
 }
 
 void CFX_TxtBreak::SetCombWidth(float fCombWidth) {
@@ -83,15 +77,9 @@
   return chartype >= FX_CHARTYPE_ArabicAlef ? FX_CHARTYPE_Arabic : chartype;
 }
 
-void CFX_TxtBreak::ResetArabicContext() {
-  m_iCurAlignment = m_iAlignment;
-  m_dwContextCharStyles = m_iAlignment;
-  m_dwContextCharStyles |= (m_iArabicContext << 8);
-}
-
 void CFX_TxtBreak::AppendChar_PageLoad(CFX_Char* pCurChar, uint32_t dwProps) {
   pCurChar->m_dwStatus = CFX_BreakType::None;
-  pCurChar->m_dwCharStyles = m_dwContextCharStyles;
+  pCurChar->m_dwCharStyles = m_iAlignment | (1 << 8);
 }
 
 void CFX_TxtBreak::AppendChar_Combination(CFX_Char* pCurChar) {
@@ -479,7 +467,7 @@
   }
 
   int32_t iOffset = m_iLineWidth - iNetWidth;
-  if (iGapChars > 0 && m_iCurAlignment & CFX_TxtLineAlignment_Justified &&
+  if (iGapChars > 0 && m_iAlignment & CFX_TxtLineAlignment_Justified &&
       dwStatus != CFX_BreakType::Paragraph) {
     int32_t iStart = -1;
     for (auto& tpo : tpos) {
@@ -504,10 +492,10 @@
       }
       iStart += ttp.m_iWidth;
     }
-  } else if (m_iCurAlignment & CFX_TxtLineAlignment_Center ||
-             m_iCurAlignment & CFX_TxtLineAlignment_Right) {
-    if (m_iCurAlignment & CFX_TxtLineAlignment_Center &&
-        !(m_iCurAlignment & CFX_TxtLineAlignment_Right)) {
+  } else if (m_iAlignment & CFX_TxtLineAlignment_Center ||
+             m_iAlignment & CFX_TxtLineAlignment_Right) {
+    if (m_iAlignment & CFX_TxtLineAlignment_Center &&
+        !(m_iAlignment & CFX_TxtLineAlignment_Right)) {
       iOffset /= 2;
     }
     if (iOffset > 0) {
@@ -545,21 +533,18 @@
 
   m_iReadyLineIndex = m_pCurLine == &m_Line[0] ? 0 : 1;
   CFX_BreakLine* pNextLine = &m_Line[1 - m_iReadyLineIndex];
-  bool bAllChars = m_iCurAlignment > CFX_TxtLineAlignment_Right;
+  bool bAllChars = m_iAlignment > CFX_TxtLineAlignment_Right;
   if (!EndBreak_SplitLine(pNextLine, bAllChars)) {
     std::deque<FX_TPO> tpos;
     EndBreak_BidiLine(&tpos, dwStatus);
-    if (m_iCurAlignment > CFX_TxtLineAlignment_Left)
+    if (m_iAlignment > CFX_TxtLineAlignment_Left)
       EndBreak_Alignment(tpos, bAllChars, dwStatus);
   }
 
   m_pCurLine = pNextLine;
   CFX_Char* pTC = GetLastChar(0, false);
   m_eCharType = pTC ? pTC->GetCharType() : FX_CHARTYPE_Unknown;
-  if (dwStatus == CFX_BreakType::Paragraph) {
-    m_iArabicContext = m_iCurArabicContext = 1;
-    ResetArabicContext();
-  }
+
   return dwStatus;
 }
 
@@ -719,15 +704,6 @@
   m_iReadyLineIndex = -1;
 }
 
-void CFX_TxtBreak::Reset() {
-  m_eCharType = FX_CHARTYPE_Unknown;
-  m_iArabicContext = 1;
-  m_iCurArabicContext = 1;
-  ResetArabicContext();
-  m_Line[0].Clear();
-  m_Line[1].Clear();
-}
-
 struct FX_FORMCHAR {
   uint16_t wch;
   uint16_t wForm;
diff --git a/xfa/fgas/layout/fgas_textbreak.h b/xfa/fgas/layout/fgas_textbreak.h
index 0fe4268..439a7ee 100644
--- a/xfa/fgas/layout/fgas_textbreak.h
+++ b/xfa/fgas/layout/fgas_textbreak.h
@@ -67,7 +67,7 @@
   int32_t CountBreakPieces() const;
   const CFX_BreakPiece* GetBreakPiece(int32_t index) const;
   void ClearBreakPieces();
-  void Reset();
+
   int32_t GetDisplayPos(const FX_TXTRUN* pTxtRun,
                         FXTEXT_CHARPOS* pCharPos,
                         bool bCharCode = false,
@@ -88,7 +88,6 @@
   CFX_Char* GetLastChar(int32_t index, bool bOmitChar = true) const;
   bool HasTxtLine() const { return m_iReadyLineIndex >= 0; }
   FX_CHARTYPE GetUnifiedCharType(FX_CHARTYPE dwType) const;
-  void ResetArabicContext() override;
   void ResetContextCharStyles();
   bool EndBreak_SplitLine(CFX_BreakLine* pNextLine, bool bAllChars);
   void EndBreak_BidiLine(std::deque<FX_TPO>* tpos, CFX_BreakType dwStatus);
@@ -103,12 +102,8 @@
                      CFX_BreakLine* pNextLine,
                      bool bAllChars = false);
 
-  int32_t m_iArabicContext;
-  int32_t m_iCurArabicContext;
   int32_t m_iAlignment;
-  uint32_t m_dwContextCharStyles;
   int32_t m_iCombWidth;
-  int32_t m_iCurAlignment;
 };
 
 #endif  // XFA_FGAS_LAYOUT_FGAS_TEXTBREAK_H_