diff options
author | Tom Sepez <tsepez@chromium.org> | 2015-03-02 12:18:50 -0800 |
---|---|---|
committer | Tom Sepez <tsepez@chromium.org> | 2015-03-02 12:18:50 -0800 |
commit | b720d0a14601f1496ef15297bc46d401f5a2a890 (patch) | |
tree | d19c5604c1528646d992ffcd1beabe8279d5d4b3 /fpdfsdk/src/javascript/resource.cpp | |
parent | 944ccad72d028ed5e37f53c5c8c0888866905bc3 (diff) | |
download | pdfium-b720d0a14601f1496ef15297bc46d401f5a2a890.tar.xz |
Return error information from pdfium to JS.
This implements the previously unimplemented JS_Error() function.
Along the way:
- fix some IWYU when the include order in global.cpp was perturbed.
- remove some uses of JS_ErrorString, to increase transparency.
- use vp.IsSetting() in place of !vp.IsGetting() for clarity.
- specify an error string on several error return paths.
- add an error string for writing readonly properties.
- rename an error string constant to reflect the actual message.
- replace calls to variadic Format() with a function doing string appends.
- remove unused JS_GetClassName()
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/963193003
Diffstat (limited to 'fpdfsdk/src/javascript/resource.cpp')
-rw-r--r-- | fpdfsdk/src/javascript/resource.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/fpdfsdk/src/javascript/resource.cpp b/fpdfsdk/src/javascript/resource.cpp index 1c453dcda7..be24ccd66c 100644 --- a/fpdfsdk/src/javascript/resource.cpp +++ b/fpdfsdk/src/javascript/resource.cpp @@ -39,9 +39,24 @@ CFX_WideString JSGetStringFromID(CJS_Context* pContext, FX_UINT id) return L"The second parameter can't be converted to a Date."; case IDS_STRING_JSPRINT2: return L"The second parameter is an invalid Date!"; - case IDS_JSPARAM_INCORRECT: + case IDS_STRING_JSNOGLOBAL: return L"Global value not found."; + case IDS_STRING_JSREADONLY: + return L"Cannot assign to readonly property."; default: return L""; } } + +CFX_WideString JSFormatErrorString(const char* class_name, + const char* property_name, + const CFX_WideString& details) { + CFX_WideString result = CFX_WideString::FromLocal(class_name); + if (property_name) { + result += L"."; + result += CFX_WideString::FromLocal(property_name); + } + result += L": "; + result += details; + return result; +} |