You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Alan Kinzie (JIRA)" <ji...@apache.org> on 2016/12/05 16:45:58 UTC

[jira] [Created] (CB-12218) inconsistent null handling between EVAL and ONLINE bridge modes

Alan Kinzie created CB-12218:
--------------------------------

             Summary: inconsistent null handling between EVAL and ONLINE bridge modes
                 Key: CB-12218
                 URL: https://issues.apache.org/jira/browse/CB-12218
             Project: Apache Cordova
          Issue Type: Bug
          Components: Android
    Affects Versions: 6.0.0
         Environment: Android
            Reporter: Alan Kinzie


If the Android native code invokes the success callback like this:
callbackContext.success(null);
then the value given to the javascript callback changes depending on the bridge type used.

If the ONLINE_EVENT type is used, then null will be passed to the javascript callback.
ie: if result is the parameter of the javascript success callback then
result === null  // will be true
result === "" // will be false

If the EVAL_BRIDGE type is used, then an empty string will be passed to the javascript callback.
ie: if result is the parameter of the javascript success callback then
result === null  // will be false
result === "" // will be true

The value of the parameter given to the success callback should not change depending on the bridge type.  Since ONLINE_EVENT was the default before cordova android 6.0.0, I am inclined to think the ONLINE bridge is doing the correct behaviour.  Also, converting null to an empty string loses information.  Therefore I think the EVAL mode should to be changed to be consistent with the ONLINE mode.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org