Jeff Genovy
3712aa3d6e
ICU-13810 Fix typo in datefmt.h macro. ( #36 )
2018-09-27 14:27:37 -07:00
Jeff Genovy
a9a19fc229
ICU-20044 Fix some OOM issues in the NumberFormat class. ( #21 )
2018-09-27 14:27:37 -07:00
Jeff Genovy
8edc6ba107
ICU-20042 Improve OOM handling in PluralRules class. ( #20 )
...
- PluralRules class doesn't handle out-of-memory (OOM) errors in some code paths.
- The clone and assignment operator (operator=) methods of construction don't take an error code parameter, meaning that if an OOM error occurs during the constructor, it will not reported back to the caller, and the caller has no way to know that the object is in a half-constructed state.
- Using an internal status variable for these above cases.
- Changes to the various PluralRules helper classes to check for OOM as well.
- Using nullptr instead NULL.
- Using LocalPointer instead of raw new/delete in some cases.
- Need to set mRules to nullptr, otherwise we can end up with double deletes in the failure case. (Thanks to Andy for the review).
- Using default member initializers for class members to avoid dangling pointers. Also allows for using default constructors too.
2018-09-27 14:27:37 -07:00
Andy Heninger
35ce5296c1
ICU-13810 Doxygen warning cleanup.
2018-09-27 14:27:37 -07:00
Jeff Genovy
b12a927c93
ICU-13778 DataTimePatternGenerator code refactor. Handle Out-of-Memory (OOM) errors, use LocalPointer to prevent memory leaks when OOM occurs, use an internal error code to better report errors during clone and copy construction, mark helper methods and parameters as const, use nullptr instead of NULL, minor spelling and formatting changes. (Note: All tests pass on Windows and Linux).
...
X-SVN-Rev: 41552
2018-06-27 19:25:52 +00:00
Shane Carr
4bc6ad328b
ICU-13850 Fixing behavior of ICU4C DecimalFormat#setCurrency() to accept an empty string.
...
X-SVN-Rev: 41549
2018-06-23 02:09:42 +00:00
Shane Carr
3f7a4aa202
ICU-13840 Fixing memory overflow issue in number_decimalquantity.cpp and adding tests.
...
X-SVN-Rev: 41541
2018-06-19 21:52:52 +00:00
Peter Edberg
733e363203
ICU-13823 ICU 62.1 BRS, update measurement unit constants for release-33-1-d03 (deletes VES)
...
X-SVN-Rev: 41528
2018-06-15 01:12:52 +00:00
Shane Carr
ba800ab7bd
ICU-13835 Fixing C++17 compiler error.
...
X-SVN-Rev: 41523
2018-06-14 20:29:11 +00:00
Fredrik Roubert
1af5762873
ICU-13818 Add virtual destructor for class TokenConsumer.
...
X-SVN-Rev: 41519
2018-06-13 17:00:44 +00:00
Andy Heninger
04d300adeb
ICU-13828 DecimalFormat Error Code handling cleanups.
...
X-SVN-Rev: 41515
2018-06-11 03:56:58 +00:00
Andy Heninger
2f534730c9
ICU-13816 Windows compiler warning fix.
...
X-SVN-Rev: 41504
2018-06-04 21:04:14 +00:00
Andy Heninger
c0f9d2eeef
ICU-13807 ICU 62 No Data Testing fixes. Mostly to test code.
...
X-SVN-Rev: 41500
2018-06-01 01:19:38 +00:00
Shane Carr
dd7667d330
ICU-13804 Making number parsing code more robust when given empty symbol strings.
...
X-SVN-Rev: 41497
2018-06-01 00:31:54 +00:00
Shane Carr
08134fc59e
ICU-13667 Making =delete APIdocs consistent in numberformatter.h
...
X-SVN-Rev: 41495
2018-05-31 22:04:08 +00:00
Shane Carr
404a06a0f8
ICU-13667 Fixing incorrect version tag on scale() setter.
...
X-SVN-Rev: 41493
2018-05-31 21:32:35 +00:00
Shane Carr
6b7022632b
ICU-13667 Making new DecimalFormat constructor private.
...
X-SVN-Rev: 41489
2018-05-30 21:27:07 +00:00
Markus Scherer
438f1f363b
ICU-13667 LocalizedNumberFormatterAsFormat is in the old Format class hierarchy, add ClassID boilerplate; NoUnit move virtual destructor up into first-virtual position, right after constructors
...
X-SVN-Rev: 41487
2018-05-30 19:15:02 +00:00
Peter Edberg
16519f2643
ICU-13667 ICU 62rc BRS, update guard conditionals for non-stable API part 1 (i18n pass 1)
...
X-SVN-Rev: 41486
2018-05-30 18:39:29 +00:00
Norbert Runge
781154c113
ICU-13667 Moves digits_t, DEFAULT_THRESHOLD, and copyErrorTo() outside of U_HIDE_INTERNAL_API.
...
X-SVN-Rev: 41485
2018-05-30 14:40:13 +00:00
Shane Carr
29937704cd
ICU-8610 Responding to number skeleton code review feedback.
...
X-SVN-Rev: 41483
2018-05-30 03:34:41 +00:00
Peter Edberg
8d17fb0e1b
ICU-13667 ICU 62rc BRS, update measurement unit constants
...
X-SVN-Rev: 41481
2018-05-30 01:22:52 +00:00
Jeff Genovy
b6a793bafd
ICU-13788 Fixing issue with accidental UErrorCode conversion to UBool.
...
X-SVN-Rev: 41472
2018-05-29 01:59:42 +00:00
Jeff Genovy
1662340d17
ICU-13788 Remove trailing semicolon that causes compiler warning.
...
X-SVN-Rev: 41471
2018-05-27 03:08:42 +00:00
Jeff Genovy
d23af4f072
ICU-13788 Fix compiler error C4251 on Windows (MSVC, Clang, MinGW).
...
X-SVN-Rev: 41470
2018-05-27 03:07:57 +00:00
Jeff Genovy
530744ae3b
ICU-13667 Update filters for VS project file for numberformatter.
...
X-SVN-Rev: 41469
2018-05-26 19:23:18 +00:00
Markus Scherer
c6c8b7201a
ICU-13630 update spoof checker inclusion/recommended sets from Unicode 9 to Unicode 11
...
X-SVN-Rev: 41466
2018-05-25 23:39:01 +00:00
Shane Carr
c3c21d1fe9
ICU-13788 Fixing number_decimfmtprops C++ dependency issue.
...
X-SVN-Rev: 41465
2018-05-25 22:54:48 +00:00
Shane Carr
0b1aa193fc
ICU-13788 Fixing numparse_impl C++ dependency issues.
...
X-SVN-Rev: 41464
2018-05-25 21:29:59 +00:00
Jeff Genovy
f23cbfa975
ICU-13667 Update ICU4C version number for 62.1 release candidate.
...
X-SVN-Rev: 41463
2018-05-25 21:29:10 +00:00
Markus Scherer
d8f9a47637
ICU-13667 update/fix/improve dependencies; better layering formatting->numberparser->numberformatter->number_representation
...
X-SVN-Rev: 41461
2018-05-25 17:57:30 +00:00
Jeff Genovy
87122b9084
ICU-13775 Fix build issues on MinGW and Clang-for-Windows (with exported template instantiations).
...
X-SVN-Rev: 41460
2018-05-25 07:27:56 +00:00
Shane Carr
bf977d1acc
ICU-13788 Minor coverity fixes for number code.
...
X-SVN-Rev: 41459
2018-05-25 03:01:38 +00:00
Shane Carr
4beed11456
ICU-13722 Removing obsolete constructs FmtStackData and UCONFIG_FORMAT_FASTPATHS_49.
...
X-SVN-Rev: 41457
2018-05-25 00:26:00 +00:00
Shane Carr
79b8248092
ICU-13677 Fixing up apidoc strings for precision setting.
...
X-SVN-Rev: 41456
2018-05-24 21:28:11 +00:00
Peter Edberg
5b3c14c29d
ICU-12936 Make RelativeDateTimeFormatter handle offset of -0
...
X-SVN-Rev: 41451
2018-05-24 05:52:01 +00:00
Shane Carr
8e1dc1f3b1
ICU-13736 Change number parsing to require locale currency when using non-currency parse function.
...
X-SVN-Rev: 41450
2018-05-24 04:35:16 +00:00
Shane Carr
6f50303084
ICU-13788 Fixing data types in numparse_decimal.cpp; should fix MSVC test failure.
...
X-SVN-Rev: 41443
2018-05-23 21:59:30 +00:00
Shane Carr
2af33b7796
ICU-13763 Makes FieldPositionIterator offset by input string length in DecimalFormat, restoring ICU 61 behavior.
...
X-SVN-Rev: 41442
2018-05-23 21:08:53 +00:00
Shane Carr
0c8fed6bde
ICU-13717 During SimpleDateFormat#parseInt, avoid cloning the DecimalFormat unless necessary.
...
X-SVN-Rev: 41440
2018-05-23 04:21:24 +00:00
Shane Carr
d0d8535066
ICU-13717 Adds fast path for RBNF, which is not affect by min/max integer digits.
...
X-SVN-Rev: 41439
2018-05-23 04:03:19 +00:00
Shane Carr
4931366afe
ICU-13717 Adds "fast formatters" optimization to smpdtfmt.cpp to greatly improve the performance of SimpleDateFormat with the new number formatting pipeline.
...
X-SVN-Rev: 41438
2018-05-23 02:00:03 +00:00
Shane Carr
3e2bbc9834
ICU-13717 Fixes memory leak in date format parsing by moving cloning into the parseInt function.
...
X-SVN-Rev: 41437
2018-05-23 01:18:07 +00:00
Shane Carr
25d6d69068
ICU-13717 Moves NumberFormat cloning into the zeroPaddingNumber method. Also indirectly fixes a memory leak from the previous commit.
...
X-SVN-Rev: 41436
2018-05-23 01:04:17 +00:00
Shane Carr
eb1f330d3d
ICU-13717 Removing SimpleDateFormatMutableNFs. Temporary performance regression.
...
X-SVN-Rev: 41434
2018-05-22 22:42:13 +00:00
Shane Carr
7d627ba160
ICU-13717 Refactoring UDAT_FRACTIONAL_SECOND_FIELD to use zeroPaddingNumber for consistency with all other number formatting call sites in smpdtfmt.cpp
...
X-SVN-Rev: 41433
2018-05-22 22:21:59 +00:00
Shane Carr
c2412adb1e
ICU-11626 Fixes ICU4C CurrencyPluralInfo unit tests. Also fixes a memory leak in CurrencyPluralInfo implementation.
...
X-SVN-Rev: 41431
2018-05-22 20:47:19 +00:00
Shane Carr
0a2aeb017a
ICU-13333 Adding combining dot spoof check.
...
X-SVN-Rev: 41428
2018-05-22 02:47:31 +00:00
Shane Carr
33a0fa7172
ICU-13783 Re-writing grouping parsing logic. Same behavior but passes more corner cases.
...
X-SVN-Rev: 41427
2018-05-22 02:46:49 +00:00
Yoshito Umaoka
c5437c6e00
ICU-13300 Added thread safety note to TimeZone::detectHostTimeZone().
...
X-SVN-Rev: 41421
2018-05-21 00:39:51 +00:00