OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "xfa/fxfa/parser/xfa_script_resolveprocessor.h" | 7 #include "xfa/fxfa/parser/xfa_script_resolveprocessor.h" |
8 | 8 |
9 #include "core/fxcrt/include/fx_ext.h" | 9 #include "core/fxcrt/include/fx_ext.h" |
10 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" | 10 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" |
(...skipping 691 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
702 eLangType = XFA_SCRIPTLANGTYPE_Javascript; | 702 eLangType = XFA_SCRIPTLANGTYPE_Javascript; |
703 } else { | 703 } else { |
704 return; | 704 return; |
705 } | 705 } |
706 | 706 |
707 CXFA_ScriptContext* pContext = rnd.m_pSC; | 707 CXFA_ScriptContext* pContext = rnd.m_pSC; |
708 wsExpression = wsCondition.Mid(2, wsCondition.GetLength() - 3); | 708 wsExpression = wsCondition.Mid(2, wsCondition.GetLength() - 3); |
709 for (int32_t i = iFoundCount - 1; i >= 0; i--) { | 709 for (int32_t i = iFoundCount - 1; i >= 0; i--) { |
710 CXFA_Object* node = findNodes[i]; | 710 CXFA_Object* node = findNodes[i]; |
711 FX_BOOL bRet = FALSE; | 711 FX_BOOL bRet = FALSE; |
712 FXJSE_HVALUE pRetValue = FXJSE_Value_Create(rnd.m_pSC->GetRuntime()); | 712 CFXJSE_Value* pRetValue = FXJSE_Value_Create(rnd.m_pSC->GetRuntime()); |
713 bRet = pContext->RunScript(eLangType, wsExpression.AsStringC(), pRetValue, | 713 bRet = pContext->RunScript(eLangType, wsExpression.AsStringC(), pRetValue, |
714 node); | 714 node); |
715 if (!bRet || !FXJSE_Value_ToBoolean(pRetValue)) { | 715 if (!bRet || !FXJSE_Value_ToBoolean(pRetValue)) { |
716 findNodes.RemoveAt(i); | 716 findNodes.RemoveAt(i); |
717 } | 717 } |
718 FXJSE_Value_Release(pRetValue); | 718 FXJSE_Value_Release(pRetValue); |
719 } | 719 } |
720 } | 720 } |
721 | 721 |
722 void CXFA_ResolveProcessor::XFA_ResolveNode_FilterCondition( | 722 void CXFA_ResolveProcessor::XFA_ResolveNode_FilterCondition( |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
817 if (m_pNodeHelper->XFA_CreateNode_ForCondition(wsNextCondition)) { | 817 if (m_pNodeHelper->XFA_CreateNode_ForCondition(wsNextCondition)) { |
818 if (m_pNodeHelper->m_eLastCreateType == XFA_ELEMENT_DataGroup) { | 818 if (m_pNodeHelper->m_eLastCreateType == XFA_ELEMENT_DataGroup) { |
819 iIndex = 0; | 819 iIndex = 0; |
820 } else { | 820 } else { |
821 iIndex = iCount - 1; | 821 iIndex = iCount - 1; |
822 } | 822 } |
823 } else { | 823 } else { |
824 iIndex = iCount - 1; | 824 iIndex = iCount - 1; |
825 } | 825 } |
826 } | 826 } |
OLD | NEW |