Reed Richards created CB-14048:
----------------------------------

             Summary: Inappbrowser allowedSchemes doesn't check empty string
                 Key: CB-14048
                 URL: https://issues.apache.org/jira/browse/CB-14048
             Project: Apache Cordova
          Issue Type: Bug
          Components: cordova-plugin-inappbrowser
            Reporter: Reed Richards


The new AllowSchemes introduced with [email protected] doesn't check if  
AllowSchemes is empty after having being loaded, respectively only if null, 
which could lead to error in case a custom scheme is use but not set as white 
listed schema (which is my case)

 

What I mean is that, if no preference would be set in config.xml but a custom 
scheme would be used (my case) then the variable allowSchemes won't be null but 
an empty string

 

In InAppBrowser.java

    else if (!url.startsWith("http:") && !url.startsWith("https:") && 
url.matches("^[a-z]*://.*?$")) {
    if (allowedSchemes == null) {
        String allowed = preferences.getString("AllowedSchemes", "");
        allowedSchemes = allowed.split(",");
    }
   if (allowedSchemes != null) { // <------- If  AllowedSchemes is not 
specified,  allowedSchemes gonna be empty "" not null

 

I would like to improve this check for example like following

 

    if (allowedSchemes != null && !"".equals(allowedSchemes)) {

 

 

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to