summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu/icu-src/source/i18n/collationdatabuilder.cpp
diff options
context:
space:
mode:
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.cpp7
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;
}