| Index: icu46/patches/wpo.patch
|
| ===================================================================
|
| --- icu46/patches/wpo.patch (revision 69841)
|
| +++ icu46/patches/wpo.patch (working copy)
|
| @@ -1,28 +1,37 @@
|
| -Index: source/common/udata.c
|
| +Index: source/common/udata.cpp
|
| ===================================================================
|
| ---- source/common/udata.c (revision 22653)
|
| -+++ source/common/udata.c (working copy)
|
| -@@ -709,7 +709,7 @@
|
| +--- source/common/udata.cpp (revision 68397)
|
| ++++ source/common/udata.cpp (working copy)
|
| +@@ -610,7 +610,7 @@
|
| * our common data. *
|
| * *
|
| *----------------------------------------------------------------------*/
|
| --extern const DataHeader U_DATA_API U_ICUDATA_ENTRY_POINT;
|
| -+extern const ICU_Data_Header U_DATA_API U_ICUDATA_ENTRY_POINT;
|
| +-extern "C" const DataHeader U_DATA_API U_ICUDATA_ENTRY_POINT;
|
| ++extern "C" const ICU_Data_Header U_DATA_API U_ICUDATA_ENTRY_POINT;
|
|
|
| -
|
| - /*----------------------------------------------------------------------*
|
| -@@ -745,7 +745,7 @@
|
| - return gCommonICUData;
|
| + /*
|
| + * This would be a good place for weak-linkage declarations of
|
| +@@ -656,7 +656,7 @@
|
| + if(gCommonICUDataArray[commonDataIndex] == NULL) {
|
| + int32_t i;
|
| + for(i = 0; i < commonDataIndex; ++i) {
|
| +- if(gCommonICUDataArray[i]->pHeader == &U_ICUDATA_ENTRY_POINT) {
|
| ++ if(gCommonICUDataArray[i]->pHeader == &U_ICUDATA_ENTRY_POINT.hdr) {
|
| + /* The linked-in data is already in the list. */
|
| + return NULL;
|
| + }
|
| +@@ -675,7 +675,7 @@
|
| + setCommonICUDataPointer(uprv_getICUData_conversion(), FALSE, pErrorCode);
|
| + }
|
| + */
|
| +- setCommonICUDataPointer(&U_ICUDATA_ENTRY_POINT, FALSE, pErrorCode);
|
| ++ setCommonICUDataPointer(&U_ICUDATA_ENTRY_POINT.hdr, FALSE, pErrorCode);
|
| }
|
| -
|
| -- tData.pHeader = &U_ICUDATA_ENTRY_POINT;
|
| -+ tData.pHeader = &U_ICUDATA_ENTRY_POINT.hdr;
|
| - udata_checkCommonData(&tData, pErrorCode);
|
| - setCommonICUData(&tData, NULL, FALSE, pErrorCode);
|
| - return gCommonICUData;
|
| + return gCommonICUDataArray[commonDataIndex];
|
| + }
|
| Index: source/common/ucmndata.h
|
| ===================================================================
|
| ---- source/common/ucmndata.h (revision 22653)
|
| +--- source/common/ucmndata.h (revision 68397)
|
| +++ source/common/ucmndata.h (working copy)
|
| @@ -44,6 +44,20 @@
|
| } DataHeader;
|
| @@ -47,7 +56,7 @@
|
| } UDataOffsetTOCEntry;
|
| Index: source/stubdata/stubdata.c
|
| ===================================================================
|
| ---- source/stubdata/stubdata.c (revision 22653)
|
| +--- source/stubdata/stubdata.c (revision 68397)
|
| +++ source/stubdata/stubdata.c (working copy)
|
| @@ -20,45 +20,34 @@
|
| #include "unicode/utypes.h"
|
|
|