[ 
https://issues.apache.org/jira/browse/CB-347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13261076#comment-13261076
 ] 

Shazron Abdullah commented on CB-347:
-------------------------------------

Looking at the code, the fix is applied here:
   
https://github.com/apache/incubator-cordova-ios/blob/master/CordovaLib/Classes/CDVViewController.m#L167

But the page is loaded here:
   
https://github.com/apache/incubator-cordova-ios/blob/master/CordovaLib/Classes/CDVViewController.m#L197

There shouldn't be security errors before the page is loaded since there would 
be no calls to localStorage/WebSQL.

So the sequence of events appears to be correct, and they should occur 
synchronously. The only thing is, the UIWebView is created first before either 
of the code blocks, and perhaps during the UIWebView initialization, it picks 
up the .plist values. 

In my testing, and probably in other users' testing when they tested the patch, 
this UIWebView initialization of .plist values happens *after* the patch is 
applied (a fluke of timing), so everything appears ok - while in your case, it 
is the opposite.

The evidence points to the UIWebView picking up the .plist locations after it 
is instantiated (which makes sense if one was to design the class), but before 
a request is handled.

The fix for this would be to apply the patch before the UIWebView is 
instantiated.


                
> localStorage / SQLDatabase Error after App update
> -------------------------------------------------
>
>                 Key: CB-347
>                 URL: https://issues.apache.org/jira/browse/CB-347
>             Project: Apache Callback
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 1.2.0, 1.3.0, 1.4.0, 1.5.0
>         Environment: iOS 5.01
> PhoneGap (Any version)
> Build.PhoneGap
>            Reporter: Urs Zimmermann
>            Assignee: Shazron Abdullah
>            Priority: Blocker
>              Labels: ios5.01, localstorage, phonegap, sqldatabase, websql
>             Fix For: 1.6.0
>
>         Attachments: WebKit-Prefs.zip
>
>
> Hello
> After I update my phonegap app containing values and dates in both 
> localStorage and SQLite database on iOS 5.1
> -> Call to window.openDatabase fails with "SECURITY_ERR: DOM Exception 18"
> -> Call to localStorage.setItem fails silently
> How to Reproduce:
> In a UIWebView, create a new DB or use localStorage from phonegap API
> Overwrite / update your app and open the same database or write to 
> localStorage
> Expected Results:
> We should see the data from the database and localStorage.
> Actual Results:
> Call to window.openDatabase fails with "SECURITY_ERR: DOM Exception 18"
> Call to localStorage.setItem fails silently
> References:
> https://groups.google.com/forum/#!topic/phonegap/egzXNrBRIbk/discussion
> https://groups.google.com/forum/#!topic/phonegap/jS2IVZcg8HI/discussion
> https://issues.apache.org/jira/browse/CB-330

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to