xref: /aosp_15_r20/external/cronet/third_party/icu/patches/wpo.patch (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Workerdiff --git a/source/common/ucmndata.h b/source/common/ucmndata.h
2*6777b538SAndroid Build Coastguard Workerindex 486b4fd7..1e63833f 100644
3*6777b538SAndroid Build Coastguard Worker--- a/source/common/ucmndata.h
4*6777b538SAndroid Build Coastguard Worker+++ b/source/common/ucmndata.h
5*6777b538SAndroid Build Coastguard Worker@@ -45,6 +45,20 @@ typedef struct  {
6*6777b538SAndroid Build Coastguard Worker     UDataInfo   info;
7*6777b538SAndroid Build Coastguard Worker } DataHeader;
8*6777b538SAndroid Build Coastguard Worker
9*6777b538SAndroid Build Coastguard Worker+typedef struct {
10*6777b538SAndroid Build Coastguard Worker+    DataHeader hdr;
11*6777b538SAndroid Build Coastguard Worker+    char padding[8];
12*6777b538SAndroid Build Coastguard Worker+    uint32_t count, reserved;
13*6777b538SAndroid Build Coastguard Worker+    /*
14*6777b538SAndroid Build Coastguard Worker+    const struct {
15*6777b538SAndroid Build Coastguard Worker+    const char *const name;
16*6777b538SAndroid Build Coastguard Worker+    const void *const data;
17*6777b538SAndroid Build Coastguard Worker+    } toc[1];
18*6777b538SAndroid Build Coastguard Worker+    */
19*6777b538SAndroid Build Coastguard Worker+   int   fakeNameAndData[4];       /* TODO:  Change this header type from */
20*6777b538SAndroid Build Coastguard Worker+                                   /*        pointerTOC to OffsetTOC.     */
21*6777b538SAndroid Build Coastguard Worker+} ICU_Data_Header;
22*6777b538SAndroid Build Coastguard Worker+
23*6777b538SAndroid Build Coastguard Worker typedef struct {
24*6777b538SAndroid Build Coastguard Worker     uint32_t nameOffset;
25*6777b538SAndroid Build Coastguard Worker     uint32_t dataOffset;
26*6777b538SAndroid Build Coastguard Workerdiff --git a/source/common/udata.cpp b/source/common/udata.cpp
27*6777b538SAndroid Build Coastguard Workerindex 88126fc6..93458444 100644
28*6777b538SAndroid Build Coastguard Worker--- a/source/common/udata.cpp
29*6777b538SAndroid Build Coastguard Worker+++ b/source/common/udata.cpp
30*6777b538SAndroid Build Coastguard Worker@@ -643,7 +643,7 @@ U_NAMESPACE_END
31*6777b538SAndroid Build Coastguard Worker  *----------------------------------------------------------------------*/
32*6777b538SAndroid Build Coastguard Worker #if !defined(ICU_DATA_DIR_WINDOWS)
33*6777b538SAndroid Build Coastguard Worker // When using the Windows system data, we expect only a single data file.
34*6777b538SAndroid Build Coastguard Worker-extern "C" const DataHeader U_DATA_API U_ICUDATA_ENTRY_POINT;
35*6777b538SAndroid Build Coastguard Worker+extern "C" const ICU_Data_Header U_DATA_API U_ICUDATA_ENTRY_POINT;
36*6777b538SAndroid Build Coastguard Worker #endif
37*6777b538SAndroid Build Coastguard Worker
38*6777b538SAndroid Build Coastguard Worker /*
39*6777b538SAndroid Build Coastguard Worker@@ -696,7 +696,7 @@ openCommonData(const char *path,          /*  Path from OpenChoice?          */
40*6777b538SAndroid Build Coastguard Worker // When using the Windows system data, we expect only a single data file.
41*6777b538SAndroid Build Coastguard Worker             int32_t i;
42*6777b538SAndroid Build Coastguard Worker             for(i = 0; i < commonDataIndex; ++i) {
43*6777b538SAndroid Build Coastguard Worker-                if(gCommonICUDataArray[i]->pHeader == &U_ICUDATA_ENTRY_POINT) {
44*6777b538SAndroid Build Coastguard Worker+                if(gCommonICUDataArray[i]->pHeader == &U_ICUDATA_ENTRY_POINT.hdr) {
45*6777b538SAndroid Build Coastguard Worker                     /* The linked-in data is already in the list. */
46*6777b538SAndroid Build Coastguard Worker                     return nullptr;
47*6777b538SAndroid Build Coastguard Worker                 }
48*6777b538SAndroid Build Coastguard Worker@@ -719,7 +719,7 @@ openCommonData(const char *path,          /*  Path from OpenChoice?          */
49*6777b538SAndroid Build Coastguard Worker         */
50*6777b538SAndroid Build Coastguard Worker #if !defined(ICU_DATA_DIR_WINDOWS)
51*6777b538SAndroid Build Coastguard Worker // When using the Windows system data, we expect only a single data file.
52*6777b538SAndroid Build Coastguard Worker-        setCommonICUDataPointer(&U_ICUDATA_ENTRY_POINT, false, pErrorCode);
53*6777b538SAndroid Build Coastguard Worker+        setCommonICUDataPointer(&U_ICUDATA_ENTRY_POINT.hdr, false, pErrorCode);
54*6777b538SAndroid Build Coastguard Worker         {
55*6777b538SAndroid Build Coastguard Worker             Mutex lock;
56*6777b538SAndroid Build Coastguard Worker             return gCommonICUDataArray[commonDataIndex];
57*6777b538SAndroid Build Coastguard Workerdiff --git a/source/stubdata/stubdata.cpp b/source/stubdata/stubdata.cpp
58*6777b538SAndroid Build Coastguard Workerindex 0fa2b170..32ceb185 100644
59*6777b538SAndroid Build Coastguard Worker--- a/source/stubdata/stubdata.cpp
60*6777b538SAndroid Build Coastguard Worker+++ b/source/stubdata/stubdata.cpp
61*6777b538SAndroid Build Coastguard Worker@@ -1,3 +1,4 @@
62*6777b538SAndroid Build Coastguard Worker+
63*6777b538SAndroid Build Coastguard Worker // © 2016 and later: Unicode, Inc. and others.
64*6777b538SAndroid Build Coastguard Worker // License & terms of use: http://www.unicode.org/copyright.html
65*6777b538SAndroid Build Coastguard Worker /******************************************************************************
66*6777b538SAndroid Build Coastguard Worker@@ -17,36 +18,40 @@
67*6777b538SAndroid Build Coastguard Worker *
68*6777b538SAndroid Build Coastguard Worker *   The stub data library (for which this file is the source) is sufficient
69*6777b538SAndroid Build Coastguard Worker *   for running the data building tools.
70*6777b538SAndroid Build Coastguard Worker+*
71*6777b538SAndroid Build Coastguard Worker */
72*6777b538SAndroid Build Coastguard Worker-
73*6777b538SAndroid Build Coastguard Worker-#include "stubdata.h"
74*6777b538SAndroid Build Coastguard Worker-
75*6777b538SAndroid Build Coastguard Worker-extern "C" U_EXPORT const ICU_Data_Header U_ICUDATA_ENTRY_POINT alignas(16) = {
76*6777b538SAndroid Build Coastguard Worker-    32,          /* headerSize */
77*6777b538SAndroid Build Coastguard Worker-    0xda,        /* magic1,  (see struct MappedData in udata.c)  */
78*6777b538SAndroid Build Coastguard Worker-    0x27,        /* magic2     */
79*6777b538SAndroid Build Coastguard Worker-    {            /*UDataInfo   */
80*6777b538SAndroid Build Coastguard Worker-        sizeof(UDataInfo),      /* size        */
81*6777b538SAndroid Build Coastguard Worker-        0,                      /* reserved    */
82*6777b538SAndroid Build Coastguard Worker-
83*6777b538SAndroid Build Coastguard Worker+#include "ucmndata.h"
84*6777b538SAndroid Build Coastguard Worker+extern "C" U_EXPORT const ICU_Data_Header U_ICUDATA_ENTRY_POINT = {
85*6777b538SAndroid Build Coastguard Worker+    {            /* DataHeader */
86*6777b538SAndroid Build Coastguard Worker+        {            /* MappedData */
87*6777b538SAndroid Build Coastguard Worker+            32,          /* headerSize */
88*6777b538SAndroid Build Coastguard Worker+            0xda,        /* magic1,  (see struct MappedData in udata.c)  */
89*6777b538SAndroid Build Coastguard Worker+            0x27,        /* magic2     */
90*6777b538SAndroid Build Coastguard Worker+        },
91*6777b538SAndroid Build Coastguard Worker+        {            /*UDataInfo   */
92*6777b538SAndroid Build Coastguard Worker+            sizeof(UDataInfo),      /* size        */
93*6777b538SAndroid Build Coastguard Worker+            0,                      /* reserved    */
94*6777b538SAndroid Build Coastguard Worker #if U_IS_BIG_ENDIAN
95*6777b538SAndroid Build Coastguard Worker-        1,
96*6777b538SAndroid Build Coastguard Worker+            1,
97*6777b538SAndroid Build Coastguard Worker #else
98*6777b538SAndroid Build Coastguard Worker-        0,
99*6777b538SAndroid Build Coastguard Worker+            0,
100*6777b538SAndroid Build Coastguard Worker #endif
101*6777b538SAndroid Build Coastguard Worker-
102*6777b538SAndroid Build Coastguard Worker-        U_CHARSET_FAMILY,
103*6777b538SAndroid Build Coastguard Worker-        sizeof(char16_t),
104*6777b538SAndroid Build Coastguard Worker-        0,               /* reserved      */
105*6777b538SAndroid Build Coastguard Worker-        {0x54, 0x6f, 0x43, 0x50},   /* data format identifier: "ToCP" */
106*6777b538SAndroid Build Coastguard Worker-        {1, 0, 0, 0},   /* format version major, minor, milli, micro */
107*6777b538SAndroid Build Coastguard Worker-        {0, 0, 0, 0}    /* dataVersion   */
108*6777b538SAndroid Build Coastguard Worker+            U_CHARSET_FAMILY,
109*6777b538SAndroid Build Coastguard Worker+            sizeof(UChar),
110*6777b538SAndroid Build Coastguard Worker+            0,               /* reserved      */
111*6777b538SAndroid Build Coastguard Worker+            {                /* data format identifier */
112*6777b538SAndroid Build Coastguard Worker+               0x54, 0x6f, 0x43, 0x50}, /* "ToCP" */
113*6777b538SAndroid Build Coastguard Worker+               {1, 0, 0, 0},   /* format version major, minor, milli, micro */
114*6777b538SAndroid Build Coastguard Worker+               {0, 0, 0, 0}    /* dataVersion   */
115*6777b538SAndroid Build Coastguard Worker+        },
116*6777b538SAndroid Build Coastguard Worker     },
117*6777b538SAndroid Build Coastguard Worker-    { 's', 't', 'u', 'b', 'd', 'a', 't', 'a' },  /* Padding[8] */
118*6777b538SAndroid Build Coastguard Worker+    {0,0,0,0,0,0,0,0},  /* Padding[8]   */
119*6777b538SAndroid Build Coastguard Worker     0,                  /* count        */
120*6777b538SAndroid Build Coastguard Worker     0,                  /* Reserved     */
121*6777b538SAndroid Build Coastguard Worker     {                   /*  TOC structure */
122*6777b538SAndroid Build Coastguard Worker-        0 , 0           /* name and data entries.  Count says there are none,  */
123*6777b538SAndroid Build Coastguard Worker+/*        {    */
124*6777b538SAndroid Build Coastguard Worker+          0 , 0 , 0, 0  /* name and data entries.  Count says there are none,  */
125*6777b538SAndroid Build Coastguard Worker                         /*  but put one in just in case.                       */
126*6777b538SAndroid Build Coastguard Worker+/*        }  */
127*6777b538SAndroid Build Coastguard Worker     }
128*6777b538SAndroid Build Coastguard Worker-};
129*6777b538SAndroid Build Coastguard Worker+};
130*6777b538SAndroid Build Coastguard Worker\ No newline at end of file
131