diff options
Diffstat (limited to 'thirdparty/icu4c/common/rbbirb.cpp')
-rw-r--r-- | thirdparty/icu4c/common/rbbirb.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/thirdparty/icu4c/common/rbbirb.cpp b/thirdparty/icu4c/common/rbbirb.cpp index 1b2ee67187..4fd789970c 100644 --- a/thirdparty/icu4c/common/rbbirb.cpp +++ b/thirdparty/icu4c/common/rbbirb.cpp @@ -103,7 +103,7 @@ RBBIRuleBuilder::~RBBIRuleBuilder() { int i; for (i=0; ; i++) { - RBBINode *n = (RBBINode *)fUSetNodes->elementAt(i); + RBBINode* n = static_cast<RBBINode*>(fUSetNodes->elementAt(i)); if (n==nullptr) { break; } @@ -182,12 +182,12 @@ RBBIDataHeader *RBBIRuleBuilder::flattenData() { } #endif - RBBIDataHeader *data = (RBBIDataHeader *)uprv_malloc(totalSize); - if (data == nullptr) { + LocalMemory<RBBIDataHeader> data(static_cast<RBBIDataHeader*>(uprv_malloc(totalSize))); + if (data.isNull()) { *fStatus = U_MEMORY_ALLOCATION_ERROR; return nullptr; } - uprv_memset(data, 0, totalSize); + uprv_memset(data.getAlias(), 0, totalSize); data->fMagic = 0xb1a0; @@ -213,23 +213,23 @@ RBBIDataHeader *RBBIRuleBuilder::flattenData() { uprv_memset(data->fReserved, 0, sizeof(data->fReserved)); - fForwardTable->exportTable((uint8_t *)data + data->fFTable); - fForwardTable->exportSafeTable((uint8_t *)data + data->fRTable); - fSetBuilder->serializeTrie ((uint8_t *)data + data->fTrie); + fForwardTable->exportTable(reinterpret_cast<uint8_t*>(data.getAlias()) + data->fFTable); + fForwardTable->exportSafeTable(reinterpret_cast<uint8_t*>(data.getAlias()) + data->fRTable); + fSetBuilder->serializeTrie(reinterpret_cast<uint8_t*>(data.getAlias()) + data->fTrie); - int32_t *ruleStatusTable = (int32_t *)((uint8_t *)data + data->fStatusTable); + int32_t* ruleStatusTable = reinterpret_cast<int32_t*>(reinterpret_cast<uint8_t*>(data.getAlias()) + data->fStatusTable); for (i=0; i<fRuleStatusVals->size(); i++) { ruleStatusTable[i] = fRuleStatusVals->elementAti(i); } - u_strToUTF8WithSub((char *)data+data->fRuleSource, rulesSize, &rulesLengthInUTF8, + u_strToUTF8WithSub(reinterpret_cast<char*>(data.getAlias()) + data->fRuleSource, rulesSize, &rulesLengthInUTF8, fStrippedRules.getBuffer(), fStrippedRules.length(), 0xfffd, nullptr, fStatus); if (U_FAILURE(*fStatus)) { return nullptr; } - return data; + return data.orphan(); } |