| Index: source/common/utrie2_builder.cpp
|
| diff --git a/source/common/utrie2_builder.cpp b/source/common/utrie2_builder.cpp
|
| index 0815822c5035f708e26e23848de8d1103b177124..664051c5f9bd04066a2ef0f466e365a77899a925 100644
|
| --- a/source/common/utrie2_builder.cpp
|
| +++ b/source/common/utrie2_builder.cpp
|
| @@ -1,3 +1,5 @@
|
| +// Copyright (C) 2016 and later: Unicode, Inc. and others.
|
| +// License & terms of use: http://www.unicode.org/copyright.html
|
| /*
|
| ******************************************************************************
|
| *
|
| @@ -248,11 +250,11 @@ cloneBuilder(const UNewTrie2 *other) {
|
|
|
| /* clone data */
|
| uprv_memcpy(trie->index1, other->index1, sizeof(trie->index1));
|
| - uprv_memcpy(trie->index2, other->index2, other->index2Length*4);
|
| + uprv_memcpy(trie->index2, other->index2, (size_t)other->index2Length*4);
|
| trie->index2NullOffset=other->index2NullOffset;
|
| trie->index2Length=other->index2Length;
|
|
|
| - uprv_memcpy(trie->data, other->data, other->dataLength*4);
|
| + uprv_memcpy(trie->data, other->data, (size_t)other->dataLength*4);
|
| trie->dataNullOffset=other->dataNullOffset;
|
| trie->dataLength=other->dataLength;
|
|
|
| @@ -260,7 +262,7 @@ cloneBuilder(const UNewTrie2 *other) {
|
| if(other->isCompacted) {
|
| trie->firstFreeBlock=0;
|
| } else {
|
| - uprv_memcpy(trie->map, other->map, (other->dataLength>>UTRIE2_SHIFT_2)*4);
|
| + uprv_memcpy(trie->map, other->map, ((size_t)other->dataLength>>UTRIE2_SHIFT_2)*4);
|
| trie->firstFreeBlock=other->firstFreeBlock;
|
| }
|
|
|
| @@ -540,7 +542,7 @@ allocDataBlock(UNewTrie2 *trie, int32_t copyBlock) {
|
| if(data==NULL) {
|
| return -1;
|
| }
|
| - uprv_memcpy(data, trie->data, trie->dataLength*4);
|
| + uprv_memcpy(data, trie->data, (size_t)trie->dataLength*4);
|
| uprv_free(trie->data);
|
| trie->data=data;
|
| trie->dataCapacity=capacity;
|
| @@ -1402,7 +1404,7 @@ utrie2_freeze(UTrie2 *trie, UTrie2ValueBits valueBits, UErrorCode *pErrorCode) {
|
| /* write 32-bit data values */
|
| trie->data16=NULL;
|
| trie->data32=(uint32_t *)dest16;
|
| - uprv_memcpy(dest16, newTrie->data, newTrie->dataLength*4);
|
| + uprv_memcpy(dest16, newTrie->data, (size_t)newTrie->dataLength*4);
|
| break;
|
| default:
|
| *pErrorCode=U_ILLEGAL_ARGUMENT_ERROR;
|
|
|