Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1736)

Unified Diff: chrome/renderer/resources/extensions/send_request.js

Issue 10161038: Allow serialization of ArrayBuffer params in extension/apps API methods (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: cleanup and rebased Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/renderer/resources/extensions/send_request.js
diff --git a/chrome/renderer/resources/extensions/send_request.js b/chrome/renderer/resources/extensions/send_request.js
index 045e270323f8be406bfcf38c8c9518e990dcecc0..6216e18dd784ce865de6fd26ca2b4d35c9828606 100644
--- a/chrome/renderer/resources/extensions/send_request.js
+++ b/chrome/renderer/resources/extensions/send_request.js
@@ -107,8 +107,11 @@ function sendRequest(functionName, args, argSchemas, opt_args) {
if (request.args === undefined)
request.args = null;
- var sargs = opt_args.noStringify ?
- request.args : chromeHidden.JSON.stringify(request.args);
+ // TODO(asargent) - convert all optional native functions to accept raw
+ // v8 values instead of expecting JSON strings.
+ var doStringify = (opt_args.nativeFunction) ? true : false;
+ var requestArgs = doStringify ?
+ chromeHidden.JSON.stringify(request.args) : request.args;
var nativeFunction = opt_args.nativeFunction || natives.StartRequest;
var requestId = natives.GetNextRequestId();
@@ -116,7 +119,7 @@ function sendRequest(functionName, args, argSchemas, opt_args) {
requests[requestId] = request;
var hasCallback =
(request.callback || opt_args.customCallback) ? true : false;
- return nativeFunction(functionName, sargs, requestId, hasCallback,
+ return nativeFunction(functionName, requestArgs, requestId, hasCallback,
opt_args.forIOThread);
}

Powered by Google App Engine
This is Rietveld 408576698