Merge to XFA: Cleanup CJS_PublicMethods:

- Use FXSYS_iswdigit() instead of CJS_PublicMethods::IsDigit().
- Ditto for FXSYS_iswalpha() and FXSYS_iswalnum().
- Change CJS_PublicMethods::ParseNormalDate() and
  CJS_PublicMethods::MakeRegularDate() to take an out parameter by ptr.

TBR=ochang@chromium.org

Review URL: https://codereview.chromium.org/1539113002 .

(cherry picked from commit f84fd2b1dac1fcca41db84d162995c38af650614)

Review URL: https://codereview.chromium.org/1542693002 .
diff --git a/fpdfsdk/src/javascript/PublicMethods.cpp b/fpdfsdk/src/javascript/PublicMethods.cpp
index c2e15fb..6db31de 100644
--- a/fpdfsdk/src/javascript/PublicMethods.cpp
+++ b/fpdfsdk/src/javascript/PublicMethods.cpp
@@ -103,7 +103,7 @@
       } else {
         return FALSE;
       }
-    } else if (!IsDigit(c)) {
+    } else if (!FXSYS_iswdigit(c)) {
       return FALSE;
     }
     p++;
@@ -112,30 +112,14 @@
   return TRUE;
 }
 
-FX_BOOL CJS_PublicMethods::IsDigit(wchar_t ch) {
-  return (ch >= L'0' && ch <= L'9');
-}
-
-FX_BOOL CJS_PublicMethods::IsDigit(char ch) {
-  return std::isdigit(ch);
-}
-
-FX_BOOL CJS_PublicMethods::IsAlphabetic(wchar_t ch) {
-  return ((ch >= L'a' && ch <= L'z') || (ch >= L'A' && ch <= L'Z'));
-}
-
-FX_BOOL CJS_PublicMethods::IsAlphaNumeric(wchar_t ch) {
-  return (IsDigit(ch) || IsAlphabetic(ch));
-}
-
 FX_BOOL CJS_PublicMethods::maskSatisfied(wchar_t c_Change, wchar_t c_Mask) {
   switch (c_Mask) {
     case L'9':
-      return IsDigit(c_Change);
+      return FXSYS_iswdigit(c_Change);
     case L'A':
-      return IsAlphabetic(c_Change);
+      return FXSYS_iswalpha(c_Change);
     case L'O':
-      return IsAlphaNumeric(c_Change);
+      return FXSYS_iswalnum(c_Change);
     case L'X':
       return TRUE;
     default:
@@ -254,7 +238,7 @@
   while (p <= pEnd) {
     c = *p;
 
-    if (IsDigit(c)) {
+    if (FXSYS_iswdigit(c)) {
       swDigits += c;
       bDigitExist = TRUE;
     } else {
@@ -396,12 +380,12 @@
       break;
 
     FX_WCHAR c = string.GetAt(i);
-    if (IsDigit((wchar_t)c)) {
-      nRet = nRet * 10 + FXSYS_toDecimalDigitWide(c);
-      nSkip = i - nStart + 1;
-      if (nSkip >= nMaxStep)
-        break;
-    } else
+    if (!FXSYS_iswdigit(c))
+      break;
+
+    nRet = nRet * 10 + FXSYS_toDecimalDigitWide(c);
+    nSkip = i - nStart + 1;
+    if (nSkip >= nMaxStep)
       break;
   }
 
@@ -416,18 +400,18 @@
   nSkip = 0;
   for (int i = nStart, sz = string.GetLength(); i < sz; i++) {
     FX_WCHAR c = string.GetAt(i);
-    if ((c >= L'a' && c <= L'z') || (c >= L'A' && c <= L'Z')) {
-      swRet += c;
-      nSkip = i - nStart + 1;
-    } else
+    if (!FXSYS_iswdigit(c))
       break;
+
+    swRet += c;
+    nSkip = i - nStart + 1;
   }
 
   return swRet;
 }
 
 double CJS_PublicMethods::ParseNormalDate(const CFX_WideString& value,
-                                          FX_BOOL& bWrongFormat) {
+                                          bool* bWrongFormat) {
   double dt = JS_GetDateTime();
 
   int nYear = JS_GetYearFromTime(dt);
@@ -448,7 +432,7 @@
       break;
 
     FX_WCHAR c = value.GetAt(i);
-    if (IsDigit((wchar_t)c)) {
+    if (FXSYS_iswdigit(c)) {
       number[nIndex++] = ParseStringInteger(value, i, nSkip, 4);
       i += nSkip;
     } else {
@@ -469,7 +453,8 @@
       nMonth = number[1];
     }
 
-    bWrongFormat = FALSE;
+    if (bWrongFormat)
+      *bWrongFormat = false;
   } else if (nIndex == 3) {
     // case1: year/month/day
     // case2: month/day/year
@@ -492,9 +477,11 @@
       nYear = number[2];
     }
 
-    bWrongFormat = FALSE;
+    if (bWrongFormat)
+      *bWrongFormat = false;
   } else {
-    bWrongFormat = TRUE;
+    if (bWrongFormat)
+      *bWrongFormat = true;
     return dt;
   }
 
@@ -505,7 +492,7 @@
 
 double CJS_PublicMethods::MakeRegularDate(const CFX_WideString& value,
                                           const CFX_WideString& format,
-                                          FX_BOOL& bWrongFormat) {
+                                          bool* bWrongFormat) {
   double dt = JS_GetDateTime();
 
   if (format.IsEmpty() || value.IsEmpty())
@@ -522,7 +509,7 @@
 
   FX_BOOL bPm = FALSE;
   FX_BOOL bExit = FALSE;
-  bWrongFormat = FALSE;
+  bool bBadFormat = false;
 
   int i = 0;
   int j = 0;
@@ -707,7 +694,7 @@
           }
         } else {
           if (j >= value.GetLength() || format.GetAt(i) != value.GetAt(j)) {
-            bWrongFormat = TRUE;
+            bBadFormat = true;
             bExit = TRUE;
           }
           i++;
@@ -715,7 +702,7 @@
         }
 
         if (oldj == j) {
-          bWrongFormat = TRUE;
+          bBadFormat = true;
           bExit = TRUE;
         }
       }
@@ -725,7 +712,7 @@
         if (value.GetLength() <= j) {
           bExit = TRUE;
         } else if (format.GetAt(i) != value.GetAt(j)) {
-          bWrongFormat = TRUE;
+          bBadFormat = true;
           bExit = TRUE;
         }
 
@@ -742,24 +729,24 @@
     nYear += 2000;
 
   if (nMonth < 1 || nMonth > 12)
-    bWrongFormat = TRUE;
+    bBadFormat = true;
 
   if (nDay < 1 || nDay > 31)
-    bWrongFormat = TRUE;
+    bBadFormat = true;
 
   if (nHour < 0 || nHour > 24)
-    bWrongFormat = TRUE;
+    bBadFormat = true;
 
   if (nMin < 0 || nMin > 60)
-    bWrongFormat = TRUE;
+    bBadFormat = true;
 
   if (nSec < 0 || nSec > 60)
-    bWrongFormat = TRUE;
+    bBadFormat = true;
 
   double dRet = 0;
 
-  if (bWrongFormat) {
-    dRet = ParseNormalDate(value, bWrongFormat);
+  if (bBadFormat) {
+    dRet = ParseNormalDate(value, &bBadFormat);
   } else {
     dRet = JS_MakeDate(JS_MakeDay(nYear, nMonth - 1, nDay),
                        JS_MakeTime(nHour, nMin, nSec, 0));
@@ -770,9 +757,11 @@
   }
 
   if (JS_PortIsNan(dRet)) {
-    dRet = ParseNormalDate(value, bWrongFormat);
+    dRet = ParseNormalDate(value, &bBadFormat);
   }
 
+  if (bWrongFormat)
+    *bWrongFormat = bBadFormat;
   return dRet;
 }
 
@@ -1175,8 +1164,8 @@
         bRc = FALSE;
         return TRUE;
       }
-      if (it != w_strChange2.begin())  // sign's position is not correct
-      {
+      // sign's position is not correct
+      if (it != w_strChange2.begin()) {
         FX_BOOL& bRc = pEvent->Rc();
         bRc = FALSE;
         return TRUE;
@@ -1190,7 +1179,7 @@
       continue;
     }
 
-    if (!IsDigit(*it)) {
+    if (!FXSYS_iswdigit(*it)) {
       FX_BOOL& bRc = pEvent->Rc();
       bRc = FALSE;
       return TRUE;
@@ -1242,7 +1231,7 @@
   double dValue = atof(strValue);
   dValue *= 100;
   if (iDec > 0)
-    dValue += DOUBLE_CORRECT;  //УÕý
+    dValue += DOUBLE_CORRECT;
 
   int iDec2;
   int iNegative = 0;
@@ -1330,7 +1319,6 @@
     return TRUE;
 
   CFX_WideString sFormat = params[0].ToCFXWideString();
-  FX_BOOL bWrongFormat = FALSE;
   double dDate = 0.0f;
 
   if (strValue.Find(L"GMT") != -1) {
@@ -1338,7 +1326,7 @@
     // such as "Tue Aug 11 14:24:16 GMT+08002009"
     dDate = MakeInterDate(strValue);
   } else {
-    dDate = MakeRegularDate(strValue, sFormat, bWrongFormat);
+    dDate = MakeRegularDate(strValue, sFormat, nullptr);
   }
 
   if (JS_PortIsNan(dDate)) {
@@ -1445,8 +1433,8 @@
       return TRUE;
 
     CFX_WideString sFormat = params[0].ToCFXWideString();
-    FX_BOOL bWrongFormat = FALSE;
-    double dRet = MakeRegularDate(strValue, sFormat, bWrongFormat);
+    bool bWrongFormat = FALSE;
+    double dRet = MakeRegularDate(strValue, sFormat, &bWrongFormat);
     if (bWrongFormat || JS_PortIsNan(dRet)) {
       CFX_WideString swMsg;
       swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSPARSEDATE).c_str(),
@@ -1841,8 +1829,7 @@
   CFX_WideString sValue = params[0].ToCFXWideString();
   CFX_WideString sFormat = params[1].ToCFXWideString();
 
-  FX_BOOL bWrongFormat = FALSE;
-  double dDate = MakeRegularDate(sValue, sFormat, bWrongFormat);
+  double dDate = MakeRegularDate(sValue, sFormat, nullptr);
 
   if (JS_PortIsNan(dDate)) {
     CFX_WideString swMsg;
@@ -1944,20 +1931,17 @@
                   dTemp +=
                       ParseStringToNumber(pFormCtrl->GetExportValue().c_str());
                   break;
-                } else
-                  continue;
+                }
               }
             }
             break;
           }
           case FIELDTYPE_LISTBOX: {
-            dTemp = 0.0;
             if (pFormField->CountSelectedItems() > 1)
               break;
-            else {
-              dTemp = ParseStringToNumber(pFormField->GetValue().c_str());
-              break;
-            }
+
+            dTemp = ParseStringToNumber(pFormField->GetValue().c_str());
+            break;
           }
           default:
             break;
@@ -2057,7 +2041,7 @@
   int nIndex = 0;
   for (int i = 0, sz = str.GetLength(); i < sz; i++) {
     FX_WCHAR wc = str.GetAt(i);
-    if (IsDigit((wchar_t)wc)) {
+    if (FXSYS_iswdigit(wc)) {
       sPart += wc;
     } else {
       if (sPart.GetLength() > 0) {