diff options
author | dan sinclair <dsinclair@chromium.org> | 2017-10-24 21:46:57 -0400 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-10-25 18:14:23 +0000 |
commit | 5daf07afe5b76e702d053aaca648b977ec3bb663 (patch) | |
tree | 7f7d36eabd41737fce559d25adf7a17046c9f007 /fpdfsdk/javascript/global.cpp | |
parent | 80435cb746fa7bd22cf062ab39829ec86000fd21 (diff) | |
download | pdfium-5daf07afe5b76e702d053aaca648b977ec3bb663.tar.xz |
Make NewNull return an actual Null
This CL updates the CFXJS_Engine::NewNull method to return a real v8::Null
instead of an empty v8::Local. This also adds a NewUndefined and returns
undefined in most of the places null was returned previously.
Change-Id: If1a96bf253057892a3b709cbc72f8825c52503c3
Reviewed-on: https://pdfium-review.googlesource.com/16730
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'fpdfsdk/javascript/global.cpp')
-rw-r--r-- | fpdfsdk/javascript/global.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/fpdfsdk/javascript/global.cpp b/fpdfsdk/javascript/global.cpp index 040c6e6067..5dc6ac9d78 100644 --- a/fpdfsdk/javascript/global.cpp +++ b/fpdfsdk/javascript/global.cpp @@ -109,7 +109,8 @@ void JSSpecialPropGet(const char* class_name, pRuntime->Error(JSFormatErrorString(class_name, "GetProperty", L"")); return; } - info.GetReturnValue().Set(value.ToV8Value()); + if (!value.ToV8Value().IsEmpty()) + info.GetReturnValue().Set(value.ToV8Value()); } template <class Alt> @@ -284,16 +285,12 @@ bool JSGlobalAlternate::GetProperty(CJS_Runtime* pRuntime, const wchar_t* propname, CJS_Value* vp) { auto it = m_MapGlobal.find(ByteString::FromUnicode(propname)); - if (it == m_MapGlobal.end()) { - vp->Set(pRuntime->NewNull()); + if (it == m_MapGlobal.end()) return true; - } JSGlobalData* pData = it->second.get(); - if (pData->bDeleted) { - vp->Set(pRuntime->NewNull()); + if (pData->bDeleted) return true; - } switch (pData->nType) { case JS_GlobalDataType::NUMBER: |