cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From julio cesar sanchez <jcesarmob...@gmail.com>
Subject Re: Cordova bridge call exception console log does not include call stack information
Date Tue, 30 Aug 2016 21:20:00 GMT
Hi.

Can you create an issue on issues.cordova.io?

El martes, 30 de agosto de 2016, Li, Jonathan <jonathan.li@sap.com>
escribió:

>
> Hi,
> In cordova.js, callbackFromNative method, when handles the exception, it
> only logs the callbackid and error message, but does not log the error
> callstack. Usually the callstack is quite useful to find what causes the
> exception, so just wonder what is the reason to not include it in the error
> console log.
>
> If it is fine to include the call stack information in the console log, I
> would like to submit a pull request for the change.
>
>
>   /**
>      * Called by native code when returning the result from an action.
>      */
>     callbackFromNative: function(callbackId, isSuccess, status, args,
> keepCallback) {
>         try {
>             var callback = cordova.callbacks[callbackId];
>             if (callback) {
>                 if (isSuccess && status == cordova.callbackStatus.OK) {
>                     callback.success && callback.success.apply(null, args);
>                 } else if (!isSuccess) {
>                     callback.fail && callback.fail.apply(null, args);
>                 }
>                 /*
>                 else
>                     Note, this case is intentionally not caught.
>                     this can happen if isSuccess is true, but
> callbackStatus is NO_RESULT
>                     which is used to remove a callback from the list
> without calling the callbacks
>                     typically keepCallback is false in this case
>                 */
>                 // Clear callback if not expecting any more results
>                 if (!keepCallback) {
>                     delete cordova.callbacks[callbackId];
>                 }
>             }
>         }
>         catch (err) {
>             var msg = "Error in " + (isSuccess ? "Success" : "Error") + "
> callbackId: " + callbackId + " : " + err;
>             console && console.log && console.log(msg);
>             cordova.fireWindowEvent("cordovacallbackerror", { 'message':
> msg });
>             throw err;
>         }
>
> Thanks
> Jonathan
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message