Index: xfa/src/fxfa/src/app/xfa_textlayout.h |
diff --git a/xfa/src/fxfa/src/app/xfa_textlayout.h b/xfa/src/fxfa/src/app/xfa_textlayout.h |
index 44a27ad46c6321b165c374e8851e6bb6565e170d..fa32b70961c4e5d82e99d14b514f3be067df3e25 100644 |
--- a/xfa/src/fxfa/src/app/xfa_textlayout.h |
+++ b/xfa/src/fxfa/src/app/xfa_textlayout.h |
@@ -225,7 +225,14 @@ class CXFA_TextUserData : public IFX_Unknown, public CFX_Target { |
IFX_MEMAllocator* m_pAllocator; |
FX_DWORD m_dwRefCount; |
}; |
-typedef struct _XFA_TEXTPIECE : public CFX_Target { |
+ |
+struct XFA_TEXTPIECE : public CFX_Target { |
+ XFA_TEXTPIECE() : pszText(nullptr), pFont(nullptr), pLinkData(nullptr) {} |
+ ~XFA_TEXTPIECE() { |
+ if (pLinkData) |
+ pLinkData->Release(); |
+ } |
+ |
FX_WCHAR* pszText; |
int32_t iChars; |
int32_t* pWidths; |
@@ -240,20 +247,9 @@ typedef struct _XFA_TEXTPIECE : public CFX_Target { |
FX_FLOAT fFontSize; |
CFX_RectF rtPiece; |
CXFA_LinkUserData* pLinkData; |
+}; |
+typedef CFX_ArrayTemplate<XFA_TEXTPIECE*> CXFA_PieceArray; |
- _XFA_TEXTPIECE() : pszText(NULL), pFont(NULL), pLinkData(NULL) { |
- pszText = NULL; |
- } |
- ~_XFA_TEXTPIECE() { |
- pszText = NULL; |
- if (NULL != pLinkData) { |
- pLinkData->Release(); |
- pLinkData = NULL; |
- } |
- } |
-} XFA_TEXTPIECE, *XFA_LPTEXTPIECE; |
-typedef XFA_TEXTPIECE const* XFA_LPCTEXTPIECE; |
-typedef CFX_ArrayTemplate<XFA_LPTEXTPIECE> CXFA_PieceArray; |
class CXFA_PieceLine : public CFX_Target { |
public: |
CXFA_PieceLine() {} |
@@ -383,10 +379,10 @@ class CXFA_TextLayout { |
int32_t iPiece, |
FXTEXT_CHARPOS* pCharPos, |
const CFX_Matrix& tmDoc2Device); |
- int32_t GetDisplayPos(XFA_LPCTEXTPIECE pPiece, |
+ int32_t GetDisplayPos(const XFA_TEXTPIECE* pPiece, |
FXTEXT_CHARPOS* pCharPos, |
FX_BOOL bCharCode = FALSE); |
- FX_BOOL ToRun(XFA_LPCTEXTPIECE pPiece, FX_RTFTEXTOBJ& tr); |
+ FX_BOOL ToRun(const XFA_TEXTPIECE* pPiece, FX_RTFTEXTOBJ& tr); |
void DoTabstops(IFDE_CSSComputedStyle* pStyle, CXFA_PieceLine* pPieceLine); |
FX_BOOL Layout(int32_t iBlock); |
int32_t CountBlocks() const; |