diff options
Diffstat (limited to 'Build/source/libs/icu/icu-src/source/i18n/collationdatabuilder.cpp')
-rw-r--r-- | Build/source/libs/icu/icu-src/source/i18n/collationdatabuilder.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/Build/source/libs/icu/icu-src/source/i18n/collationdatabuilder.cpp b/Build/source/libs/icu/icu-src/source/i18n/collationdatabuilder.cpp index 25050aa777e..b10de993c27 100644 --- a/Build/source/libs/icu/icu-src/source/i18n/collationdatabuilder.cpp +++ b/Build/source/libs/icu/icu-src/source/i18n/collationdatabuilder.cpp @@ -522,12 +522,11 @@ CollationDataBuilder::addConditionalCE32(const UnicodeString &context, uint32_t errorCode = U_BUFFER_OVERFLOW_ERROR; return -1; } - ConditionalCE32 *cond = new ConditionalCE32(context, ce32); - if(cond == NULL) { - errorCode = U_MEMORY_ALLOCATION_ERROR; + LocalPointer<ConditionalCE32> cond(new ConditionalCE32(context, ce32), errorCode); + conditionalCE32s.adoptElement(cond.orphan(), errorCode); + if(U_FAILURE(errorCode)) { return -1; } - conditionalCE32s.addElementX(cond, errorCode); return index; } |