doc.external - Check direction of property access before blindly getting.
authorTom Sepez <tsepez@chromium.org>
Wed, 1 Apr 2015 16:49:59 +0000 (09:49 -0700)
committerTom Sepez <tsepez@chromium.org>
Wed, 1 Apr 2015 16:49:59 +0000 (09:49 -0700)
BUG=https://code.google.com/p/pdfium/issues/detail?id=137
R=thestig@chromium.org

Review URL: https://codereview.chromium.org/1039063002

fpdfsdk/src/javascript/Document.cpp

index f88d661..b1a2ad7 100644 (file)
@@ -1139,7 +1139,9 @@ FX_BOOL Document::numPages(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
 FX_BOOL Document::external(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError)
 {
        //In Chrome case,should always return true.
-       vp << TRUE;
+       if (vp.IsGetting()) {
+               vp << TRUE;
+       }
        return TRUE;
 }
 
@@ -1169,13 +1171,12 @@ FX_BOOL Document::baseURL(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
        if (vp.IsGetting())
        {
                vp << m_cwBaseURL;
-               return TRUE;
        }
        else
        {
                vp >> m_cwBaseURL;
-               return TRUE;
        }
+       return TRUE;
 }
 
 FX_BOOL Document::calculate(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError)
@@ -1302,11 +1303,6 @@ FX_BOOL Document::addLink(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
 FX_BOOL Document::closeDoc(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& vRet, CFX_WideString& sError)
 {
        ASSERT(m_pDocument != NULL);
-
-
-
-
-
        return TRUE;
 }
 
@@ -1315,7 +1311,6 @@ FX_BOOL Document::getPageBox(IFXJS_Context* cc, const CJS_Parameters& params, CJ
        return TRUE;
 }
 
-
 FX_BOOL Document::getAnnot(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& vRet, CFX_WideString& sError)
 {
        return TRUE;