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

Vladimir Kotikov closed CB-11223.
---------------------------------
    Resolution: Fixed

> Better check for date validity of contact.birthday / Fix: RangeError Invalid 
> Date
> ---------------------------------------------------------------------------------
>
>                 Key: CB-11223
>                 URL: https://issues.apache.org/jira/browse/CB-11223
>             Project: Apache Cordova
>          Issue Type: Improvement
>          Components: Plugin Contacts
>         Environment: Desktop Firefox & Safari
> Android & iOS Webview
>            Reporter: Tanase Butcaru
>            Priority: Critical
>              Labels: easyfix
>
> The issue: on Safari & iOS webview if we perform a _toJSON()_ on a instanceof 
> Date object which is a 'Invalid Date' object, that throws an error. This does 
> not happen on Firefox & Chrome!
> I encountered this issue while sending device contacts over _socket.io_ which 
> iterates over contacts props and does a _toJSON()_, but the problem was that 
> the Date object from _birthday_ property was not valid.
> Simple test case:
> {code:javascript}
> var contact = { birthday: null }; //data provided by cordova-plugin-contacts
> try {
>     contact.birthday = new Date(parseFloat(contact.birthday));
> }
> catch(e) {
>    console.log(e); //this will never be called
> }
> //where the error occures..
> contact.birthday.toJSON();
> {code}
> An 'Invalid Date' error does not throw anything, so a simple try-catch block 
> doesn't pass the validity of that date.
> The changes I made in _convertUtils.js_ resolves this problem.



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

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

Reply via email to