summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/resources
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/renderer/resources')
-rw-r--r--chrome/renderer/resources/extension_process_bindings.js15
1 files changed, 11 insertions, 4 deletions
diff --git a/chrome/renderer/resources/extension_process_bindings.js b/chrome/renderer/resources/extension_process_bindings.js
index f132e55..3155c05 100644
--- a/chrome/renderer/resources/extension_process_bindings.js
+++ b/chrome/renderer/resources/extension_process_bindings.js
@@ -61,11 +61,16 @@ var chrome = chrome || {};
chromeHidden.handleResponse = function(requestId, name,
success, response, error) {
try {
- if (!success) {
- if (!error)
+ if (success) {
+ delete chrome.extension.lastError;
+ } else {
+ if (!error) {
error = "Unknown error."
+ }
console.error("Error during " + name + ": " + error);
- return;
+ chrome.extension.lastError = {
+ "message": error
+ };
}
if (callbacks[requestId]) {
@@ -77,6 +82,7 @@ var chrome = chrome || {};
}
} finally {
delete callbacks[requestId];
+ delete chrome.extension.lastError;
}
};
@@ -94,8 +100,9 @@ var chrome = chrome || {};
// Calls with one argument expect singular argument. Calls with multiple
// expect a list.
- if (argCount == 1)
+ if (argCount == 1) {
request.args = args[0];
+ }
if (argCount > 1) {
request.args = [];
for (var k = 0; k < argCount; k++) {