| Index: extensions/renderer/resources/binding.js
 | 
| diff --git a/extensions/renderer/resources/binding.js b/extensions/renderer/resources/binding.js
 | 
| index 9804b617a4f3fb24a6f0ec26a7adbecd1a57c917..b1a3efcaca5002bb03d2918acec145572dd74e81 100644
 | 
| --- a/extensions/renderer/resources/binding.js
 | 
| +++ b/extensions/renderer/resources/binding.js
 | 
| @@ -77,11 +77,15 @@ APIFunctions.prototype.setHandleRequestWithPromise =
 | 
|          return module.createKeepAlive();
 | 
|        });
 | 
|        $Function.apply(customizedFunction, this, args).then(function(result) {
 | 
| -        sendRequestHandler.safeCallbackApply(
 | 
| -            name, {'stack': stack}, callback, [result]);
 | 
| +        if (callback) {
 | 
| +          sendRequestHandler.safeCallbackApply(name, {'stack': stack}, callback,
 | 
| +                                               [result]);
 | 
| +        }
 | 
|        }).catch(function(error) {
 | 
| -        var message = exceptionHandler.safeErrorToString(error, true);
 | 
| -        lastError.run(name, message, stack, callback);
 | 
| +        if (callback) {
 | 
| +          var message = exceptionHandler.safeErrorToString(error, true);
 | 
| +          lastError.run(name, message, stack, callback);
 | 
| +        }
 | 
|        }).then(function() {
 | 
|          keepAlivePromise.then(function(keepAlive) {
 | 
|            keepAlive.close();
 | 
| 
 |