@@ -208,8 +208,11 @@ public static ParserConfig getGlobalInstance() {
208208 {
209209 denyHashCodes = new long []{
210210 0x80D0C70BCC2FEA02L ,
211+ 0x868385095A22725FL ,
211212 0x86FC2BF9BEAF7AEFL ,
212213 0x87F52A1B07EA33A6L ,
214+ 0x8872F29FD0B0B7A7L ,
215+ 0x8BAAEE8F9BF77FA7L ,
213216 0x8EADD40CB2A94443L ,
214217 0x8F75F9FA0DF03F80L ,
215218 0x9172A53F157930AFL ,
@@ -222,6 +225,7 @@ public static ParserConfig getGlobalInstance() {
222225 0xAA3DAFFDB10C4937L ,
223226 0xAAA9E6B7C1E1C6A7L ,
224227 0xAAAA0826487A3737L ,
228+ 0xAB82562F53E6E48FL ,
225229 0xAC6262F52C98AA39L ,
226230 0xAD937A449831E8A0L ,
227231 0xAE50DA1FAD60A096L ,
@@ -232,6 +236,7 @@ public static ParserConfig getGlobalInstance() {
232236 0xB98B6B5396932FE9L ,
233237 0xBCDD9DC12766F0CEL ,
234238 0xBCE0DEE34E726499L ,
239+ 0xBE4F13E96A6796D0L ,
235240 0xBEBA72FB1CCBA426L ,
236241 0xC00BE1DEBAF2808BL ,
237242 0xC1086AFAE32E6258L ,
@@ -242,6 +247,7 @@ public static ParserConfig getGlobalInstance() {
242247 0xC8D49E5601E661A9L ,
243248 0xC8F04B3A28909935L ,
244249 0xC963695082FD728EL ,
250+ 0xCBF29CE484222325L ,
245251 0xD1EFCDF4B3316D34L ,
246252 0xD54B91CC77B239EDL ,
247253 0xD59EE91F0B09EA01L ,
@@ -255,11 +261,14 @@ public static ParserConfig getGlobalInstance() {
255261 0xE1919804D5BF468FL ,
256262 0xE2EB3AC7E56C467EL ,
257263 0xE603D6A51FAD692BL ,
264+ 0xE704FD19052B2A34L ,
258265 0xE9184BE55B1D962AL ,
259266 0xE9F20BAD25F60807L ,
267+ 0xED13653CB45C4BEDL ,
260268 0xF2983D099D29B477L ,
261269 0xF3702A4A5490B8E8L ,
262270 0xF474E44518F26736L ,
271+ 0xF4D93F4FB3E3D991L ,
263272 0xF5D77DCF8E4D71E6L ,
264273 0xF6C0340E73A36A69L ,
265274 0xF7E96E74DFA58DBCL ,
@@ -276,10 +285,12 @@ public static ParserConfig getGlobalInstance() {
276285 0x55CFCA0F2281C07L ,
277286 0xA555C74FE3A5155L ,
278287 0xB6E292FA5955ADEL ,
288+ 0xBEF8514D0B79293L ,
279289 0xEE6511B66FD5EF0L ,
280290 0x100150A253996624L ,
281291 0x10B2BDCA849D9B3EL ,
282292 0x10DBC48446E0DAE5L ,
293+ 0x119B5B1F10210AFCL ,
283294 0x144277B467723158L ,
284295 0x14DB2E6FEAD04AF0L ,
285296 0x154B6CB22D294CFAL ,
@@ -293,6 +304,7 @@ public static ParserConfig getGlobalInstance() {
293304 0x25E962F1C28F71A2L ,
294305 0x275D0732B877AF29L ,
295306 0x28AC82E44E933606L ,
307+ 0x2A71CE2CC40A710CL ,
296308 0x2AD1CE3A112F015DL ,
297309 0x2ADFEFBBFE29D931L ,
298310 0x2B3A37467A344CDFL ,
@@ -304,17 +316,22 @@ public static ParserConfig getGlobalInstance() {
304316 0x332F0B5369A18310L ,
305317 0x339A3E0B6BEEBEE9L ,
306318 0x33C64B921F523F2FL ,
319+ 0x33E7F3E02571B153L ,
307320 0x34A81EE78429FDF1L ,
321+ 0x37317698DCFCE894L ,
308322 0x378307CB0111E878L ,
309323 0x3826F4B2380C8B9BL ,
310324 0x398F942E01920CF0L ,
311325 0x3A31412DBB05C7FFL ,
326+ 0x3A7EE0635EB2BC33L ,
312327 0x3ADBA40367F73264L ,
313328 0x3B0B51ECBF6DB221L ,
329+ 0x3BF14094A524F0E2L ,
314330 0x42D11A560FC9FBA9L ,
315331 0x43320DC9D2AE0892L ,
316332 0x440E89208F445FB9L ,
317333 0x46C808A4B5841F57L ,
334+ 0x470FD3A18BB39414L ,
318335 0x49312BDAFB0077D9L ,
319336 0x4A3797B30328202CL ,
320337 0x4BA3E254E758D70DL ,
@@ -323,8 +340,10 @@ public static ParserConfig getGlobalInstance() {
323340 0x4DA972745FEB30C1L ,
324341 0x4EF08C90FF16C675L ,
325342 0x4FD10DDC6D13821FL ,
343+ 0x521B4F573376DF4AL ,
326344 0x527DB6B46CE3BCBCL ,
327345 0x535E552D6F9700C1L ,
346+ 0x54855E265FE1DAD5L ,
328347 0x5728504A6D454FFCL ,
329348 0x599B5C1213A099ACL ,
330349 0x5A5BD85C072E5EFEL ,
@@ -336,6 +355,7 @@ public static ParserConfig getGlobalInstance() {
336355 0x5F215622FB630753L ,
337356 0x61C5BDD721385107L ,
338357 0x62DB241274397C34L ,
358+ 0x636ECCA2A131B235L ,
339359 0x63A220E60A17C7B9L ,
340360 0x647AB0224E149EBEL ,
341361 0x65F81B84C1D920CDL ,
@@ -349,9 +369,13 @@ public static ParserConfig getGlobalInstance() {
349369 0x74B50BB9260E31FFL ,
350370 0x75CC60F5871D0FD3L ,
351371 0x767A586A5107FEEFL ,
372+ 0x78E5935826671397L ,
373+ 0x793ADDDED7A967F5L ,
352374 0x7AA7EE3627A19CF3L ,
375+ 0x7AFA070241B8CC4BL ,
353376 0x7ED9311D28BF1A65L ,
354- 0x7ED9481D28BF417AL
377+ 0x7ED9481D28BF417AL ,
378+ 0x7EE6C477DA20BBE3L
355379 };
356380
357381 long [] hashCodes = new long [AUTO_TYPE_ACCEPT_LIST .length ];
@@ -1445,6 +1469,10 @@ public Class<?> checkAutoType(String typeName, Class<?> expectClass, int feature
14451469 clazz = deserializers .findClass (typeName );
14461470 }
14471471
1472+ if (expectClass == null && clazz != null && Throwable .class .isAssignableFrom (clazz ) && !autoTypeSupport ) {
1473+ clazz = null ;
1474+ }
1475+
14481476 if (clazz == null ) {
14491477 clazz = typeMapping .get (typeName );
14501478 }
@@ -1552,6 +1580,10 @@ public Class<?> checkAutoType(String typeName, Class<?> expectClass, int feature
15521580 }
15531581
15541582 if (!autoTypeSupport ) {
1583+ if (typeName .endsWith ("Exception" )) {
1584+ return null ;
1585+ }
1586+
15551587 throw new JSONException ("autoType is not support. " + typeName );
15561588 }
15571589
0 commit comments