Index: core/src/fpdfdoc/doc_formfield.cpp |
diff --git a/core/src/fpdfdoc/doc_formfield.cpp b/core/src/fpdfdoc/doc_formfield.cpp |
index e51acf94a111a5216045773ba04e45fe918db420..eeba372390e348b928682674ef36286ff3b9ae34 100644 |
--- a/core/src/fpdfdoc/doc_formfield.cpp |
+++ b/core/src/fpdfdoc/doc_formfield.cpp |
@@ -1077,9 +1077,12 @@ FX_BOOL CPDF_FormField::ClearSelectedOptions(FX_BOOL bNotify) |
} |
void CPDF_FormField::LoadDA() |
{ |
- CFX_ByteString DA = FPDF_GetFieldAttr(m_pDict, "DA") ? FPDF_GetFieldAttr(m_pDict, "DA")->GetString() : CFX_ByteString(); |
- if (DA.IsEmpty()) { |
- DA = m_pForm->m_pFormDict ? m_pForm->m_pFormDict->GetString("DA") : CFX_ByteString(); |
+ CFX_ByteString DA; |
+ if (CPDF_Object* pObj_t = FPDF_GetFieldAttr(m_pDict, "DA")) { |
+ DA = pObj_t->GetString(); |
+ } |
+ if (DA.IsEmpty() && m_pForm->m_pFormDict) { |
+ DA = m_pForm->m_pFormDict->GetString("DA"); |
} |
if (DA.IsEmpty()) { |
return; |