X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/4e4e5a6f2694187498445a6ac6f1634ce8141119..1df5f87f1309a8daa30dabdee855f48ae40d14ab:/runtime/DateConversion.cpp?ds=sidebyside diff --git a/runtime/DateConversion.cpp b/runtime/DateConversion.cpp index 70dbaa0..1418876 100644 --- a/runtime/DateConversion.cpp +++ b/runtime/DateConversion.cpp @@ -44,9 +44,12 @@ #include "DateConversion.h" #include "CallFrame.h" +#include "JSObject.h" +#include "ScopeChain.h" #include "UString.h" #include #include +#include using namespace WTF; @@ -56,7 +59,9 @@ double parseDate(ExecState* exec, const UString &date) { if (date == exec->globalData().cachedDateString) return exec->globalData().cachedDateStringValue; - double value = parseDateFromNullTerminatedCharacters(exec, date.UTF8String().data()); + double value = parseES5DateFromNullTerminatedCharacters(date.utf8().data()); + if (isnan(value)) + value = parseDateFromNullTerminatedCharacters(exec, date.utf8().data()); exec->globalData().cachedDateString = date; exec->globalData().cachedDateStringValue = value; return value;