You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Lorin Beer (JIRA)" <ji...@apache.org> on 2013/07/24 21:39:50 UTC

[jira] [Assigned] (CB-2823) window.openDatabase() throws exception 18 on BlackBerry and WP

     [ https://issues.apache.org/jira/browse/CB-2823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lorin Beer reassigned CB-2823:
------------------------------

    Assignee: Lorin Beer  (was: Tim Kim)
    
> window.openDatabase() throws exception 18 on BlackBerry and WP
> --------------------------------------------------------------
>
>                 Key: CB-2823
>                 URL: https://issues.apache.org/jira/browse/CB-2823
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: BlackBerry
>    Affects Versions: 2.4.0, 2.5.0
>            Reporter: Anton Merkulov
>            Assignee: Lorin Beer
>         Attachments: IMAG0149.jpg
>
>
> For example this string
> {code}
>         document.addEventListener("deviceready", function onDeviceReady() {
>           var db = this.window.openDatabase('blackBerryDB', '1.0', 'blackBerryDBName', 5000000);
>         }, false);
> {code}
> will throw SECURITY_ERR: DOM Exception 18
> Looks like this problemm was resolved for androis and ios and stay actual for BlackBerry and WP
> Example cordova.2.4.js for android
> {code:title=cordova.2.4.js|borderStyle=solid}
>   // some Android devices will throw a SECURITY_ERR -
>   // so we wrap the whole thing in a try-catch and shim in our own
>   // if the device has Android bug 16175.
>   var originalOpenDatabase = window.openDatabase;
>   window.openDatabase = function(name, version, desc, size) {
>     var db = null;
>     try {
>       db = originalOpenDatabase(name, version, desc, size);
>     } catch (ex) {
>       if (ex.code === 18) {
>         db = null;
>       } else {
>         throw ex;
>       }
>     }
>     if (db === null) {
>       return storage.openDatabase(name, version, desc, size);
>     } else {
>       return db;
>     }
>   };
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira