| OLD | NEW | 
|---|
| 1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 
| 6 | 6 | 
| 7 #include <algorithm> | 7 #include <algorithm> | 
| 8 | 8 | 
| 9 #include "core/fxcrt/include/fx_ext.h" | 9 #include "core/fxcrt/include/fx_ext.h" | 
| 10 #include "core/fxcrt/include/fx_xml.h" | 10 #include "core/fxcrt/include/fx_xml.h" | 
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 61 static const FX_WCHAR gs_wsConstChars[] = L",-:/. "; | 61 static const FX_WCHAR gs_wsConstChars[] = L",-:/. "; | 
| 62 | 62 | 
| 63 static FX_STRSIZE FX_Local_Find(const CFX_WideStringC& wsSymbols, | 63 static FX_STRSIZE FX_Local_Find(const CFX_WideStringC& wsSymbols, | 
| 64                                 FX_WCHAR ch, | 64                                 FX_WCHAR ch, | 
| 65                                 FX_STRSIZE nStart = 0) { | 65                                 FX_STRSIZE nStart = 0) { | 
| 66   FX_STRSIZE nLength = wsSymbols.GetLength(); | 66   FX_STRSIZE nLength = wsSymbols.GetLength(); | 
| 67   if (nLength < 1 || nStart > nLength) { | 67   if (nLength < 1 || nStart > nLength) { | 
| 68     return -1; | 68     return -1; | 
| 69   } | 69   } | 
| 70   const FX_WCHAR* lpsz = | 70   const FX_WCHAR* lpsz = | 
| 71       (const FX_WCHAR*)FXSYS_wcschr(wsSymbols.GetPtr() + nStart, ch); | 71       (const FX_WCHAR*)FXSYS_wcschr(wsSymbols.raw_str() + nStart, ch); | 
| 72   return (lpsz == NULL) ? -1 : (FX_STRSIZE)(lpsz - wsSymbols.GetPtr()); | 72   return (lpsz == NULL) ? -1 : (FX_STRSIZE)(lpsz - wsSymbols.raw_str()); | 
| 73 } | 73 } | 
| 74 static const FX_WCHAR* const gs_LocalNumberSymbols[] = { | 74 static const FX_WCHAR* const gs_LocalNumberSymbols[] = { | 
| 75     L"decimal", L"grouping",       L"percent",      L"minus", | 75     L"decimal", L"grouping",       L"percent",      L"minus", | 
| 76     L"zero",    L"currencySymbol", L"currencyName", | 76     L"zero",    L"currencySymbol", L"currencyName", | 
| 77 }; | 77 }; | 
| 78 IFX_Locale* IFX_Locale::Create(CXML_Element* pLocaleData) { | 78 IFX_Locale* IFX_Locale::Create(CXML_Element* pLocaleData) { | 
| 79   return new CFX_Locale(pLocaleData); | 79   return new CFX_Locale(pLocaleData); | 
| 80 } | 80 } | 
| 81 CFX_Locale::CFX_Locale(CXML_Element* pLocaleData) { | 81 CFX_Locale::CFX_Locale(CXML_Element* pLocaleData) { | 
| 82   m_pElement = pLocaleData; | 82   m_pElement = pLocaleData; | 
| (...skipping 3765 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 3848                              CFX_Unitime& datetime, | 3848                              CFX_Unitime& datetime, | 
| 3849                              IFX_Locale* pLocale) { | 3849                              IFX_Locale* pLocale) { | 
| 3850   if (wsTime.GetLength() == 0) { | 3850   if (wsTime.GetLength() == 0) { | 
| 3851     return FALSE; | 3851     return FALSE; | 
| 3852   } | 3852   } | 
| 3853   uint8_t hour = 0; | 3853   uint8_t hour = 0; | 
| 3854   uint8_t minute = 0; | 3854   uint8_t minute = 0; | 
| 3855   uint8_t second = 0; | 3855   uint8_t second = 0; | 
| 3856   uint16_t millisecond = 0; | 3856   uint16_t millisecond = 0; | 
| 3857   int cc_start = 0, cc = cc_start; | 3857   int cc_start = 0, cc = cc_start; | 
| 3858   const FX_WCHAR* str = (const FX_WCHAR*)wsTime.GetPtr(); | 3858   const FX_WCHAR* str = (const FX_WCHAR*)wsTime.raw_str(); | 
| 3859   int len = wsTime.GetLength(); | 3859   int len = wsTime.GetLength(); | 
| 3860   while (cc < len && cc < 2) { | 3860   while (cc < len && cc < 2) { | 
| 3861     if (!FX_IsDigit(str[cc])) { | 3861     if (!FX_IsDigit(str[cc])) { | 
| 3862       return FALSE; | 3862       return FALSE; | 
| 3863     } | 3863     } | 
| 3864     hour = hour * 10 + str[cc++] - '0'; | 3864     hour = hour * 10 + str[cc++] - '0'; | 
| 3865   } | 3865   } | 
| 3866   if (cc < 2 || hour >= 24) { | 3866   if (cc < 2 || hour >= 24) { | 
| 3867     return FALSE; | 3867     return FALSE; | 
| 3868   } | 3868   } | 
| (...skipping 823 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 4692     newval = FXSYS_fmod(newval, 1.0f); | 4692     newval = FXSYS_fmod(newval, 1.0f); | 
| 4693   } | 4693   } | 
| 4694   plo += FXSYS_round(newval); | 4694   plo += FXSYS_round(newval); | 
| 4695   fxmath_decimal_helper_normalize(phi, pmid, plo); | 4695   fxmath_decimal_helper_normalize(phi, pmid, plo); | 
| 4696   m_uHi = (uint32_t)phi; | 4696   m_uHi = (uint32_t)phi; | 
| 4697   m_uMid = (uint32_t)pmid; | 4697   m_uMid = (uint32_t)pmid; | 
| 4698   m_uLo = (uint32_t)plo; | 4698   m_uLo = (uint32_t)plo; | 
| 4699   m_uFlags = FXMATH_DECIMAL_MAKEFLAGS(val < 0 && IsNotZero(), scale); | 4699   m_uFlags = FXMATH_DECIMAL_MAKEFLAGS(val < 0 && IsNotZero(), scale); | 
| 4700 } | 4700 } | 
| 4701 CFX_Decimal::CFX_Decimal(const CFX_WideStringC& strObj) { | 4701 CFX_Decimal::CFX_Decimal(const CFX_WideStringC& strObj) { | 
| 4702   const FX_WCHAR* str = strObj.GetPtr(); | 4702   const FX_WCHAR* str = strObj.raw_str(); | 
| 4703   const FX_WCHAR* strBound = str + strObj.GetLength(); | 4703   const FX_WCHAR* strBound = str + strObj.GetLength(); | 
| 4704   FX_BOOL pointmet = 0; | 4704   FX_BOOL pointmet = 0; | 
| 4705   FX_BOOL negmet = 0; | 4705   FX_BOOL negmet = 0; | 
| 4706   uint8_t scale = 0; | 4706   uint8_t scale = 0; | 
| 4707   m_uHi = m_uMid = m_uLo = 0; | 4707   m_uHi = m_uMid = m_uLo = 0; | 
| 4708   while (str != strBound && *str == ' ') { | 4708   while (str != strBound && *str == ' ') { | 
| 4709     str++; | 4709     str++; | 
| 4710   } | 4710   } | 
| 4711   if (str != strBound && *str == '-') { | 4711   if (str != strBound && *str == '-') { | 
| 4712     negmet = 1; | 4712     negmet = 1; | 
| (...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 5023 } | 5023 } | 
| 5024 CFX_Decimal CFX_Decimal::operator*(const CFX_Decimal& val) const { | 5024 CFX_Decimal CFX_Decimal::operator*(const CFX_Decimal& val) const { | 
| 5025   return Multiply(val); | 5025   return Multiply(val); | 
| 5026 } | 5026 } | 
| 5027 CFX_Decimal CFX_Decimal::operator/(const CFX_Decimal& val) const { | 5027 CFX_Decimal CFX_Decimal::operator/(const CFX_Decimal& val) const { | 
| 5028   return Divide(val); | 5028   return Divide(val); | 
| 5029 } | 5029 } | 
| 5030 CFX_Decimal CFX_Decimal::operator%(const CFX_Decimal& val) const { | 5030 CFX_Decimal CFX_Decimal::operator%(const CFX_Decimal& val) const { | 
| 5031   return Modulus(val); | 5031   return Modulus(val); | 
| 5032 } | 5032 } | 
| OLD | NEW | 
|---|