- Notifications
You must be signed in to change notification settings - Fork4.9k
Commit6c55760
committed
Add direct conversion routines between EUC_TW and Big5.
Conversions between EUC_TW and Big5 were previously implemented byconverting the whole input to MIC first, and then from MIC to the targetencoding. Implement functions to convert directly between the two.The reason to do this now is that I'm working on a patch that will changethe conversion function signature so that if the input is invalid, weconvert as much as we can and return the number of bytes successfullyconverted. That's not possible if we use an intermediary format, becauseif an error happens in the intermediary -> final conversion, we lose trackof the location of the invalid character in the original input. Avoidingthe intermediate step makes the conversions faster, too.Reviewed-by: John NaylorDiscussion:https://www.postgresql.org/message-id/b9e3167f-f84b-7aa4-5738-be578a4db924%40iki.fi1 parentb80e106 commit6c55760
File tree
1 file changed
+134
-10
lines changed- src/backend/utils/mb/conversion_procs/euc_tw_and_big5
1 file changed
+134
-10
lines changedLines changed: 134 additions & 10 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
37 | 37 |
| |
38 | 38 |
| |
39 | 39 |
| |
| 40 | + | |
| 41 | + | |
40 | 42 |
| |
41 | 43 |
| |
42 | 44 |
| |
| |||
48 | 50 |
| |
49 | 51 |
| |
50 | 52 |
| |
51 |
| - | |
52 | 53 |
| |
53 | 54 |
| |
54 | 55 |
| |
55 |
| - | |
56 |
| - | |
57 |
| - | |
58 |
| - | |
| 56 | + | |
59 | 57 |
| |
60 | 58 |
| |
61 | 59 |
| |
| |||
66 | 64 |
| |
67 | 65 |
| |
68 | 66 |
| |
69 |
| - | |
70 | 67 |
| |
71 | 68 |
| |
72 | 69 |
| |
73 |
| - | |
74 |
| - | |
75 |
| - | |
76 |
| - | |
| 70 | + | |
77 | 71 |
| |
78 | 72 |
| |
79 | 73 |
| |
| |||
134 | 128 |
| |
135 | 129 |
| |
136 | 130 |
| |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
137 | 261 |
| |
138 | 262 |
| |
139 | 263 |
| |
|
0 commit comments
Comments
(0)