You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Jeffrey Heifetz (JIRA)" <ji...@apache.org> on 2013/04/04 16:41:15 UTC

[jira] [Comment Edited] (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:comment-tabpanel&focusedCommentId=13622377#comment-13622377 ] 

Jeffrey Heifetz edited comment on CB-2823 at 4/4/13 2:39 PM:
-------------------------------------------------------------

I've seen different reports of this on OS 6.0 in the past. Usually its related to the database already being there on the device. Can you confirm that it does not already exist?

Also on 6.0 and older I believe you still need an SD card for it to work
                
      was (Author: jeffheifetz):
    I've seen different reports of this on OS 6.0 in the past. Usually its related to the database already being there on the device. Can you confirm that it does not already exist?
                  
> 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: Tim Kim
>         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