fastjson2 icon indicating copy to clipboard operation
fastjson2 copied to clipboard

在某些设备上IOUtils.isNULL导致crash

Open DarkAdventurerr opened this issue 8 months ago • 2 comments

问题描述

在某些设备上IOUtils.isNULL方法crash

环境信息

请填写以下信息:

  • OS信息: Android 12-15
  • JDK信息: Java 11-17
  • 版本信息:fastjson2 2.0.56

重现步骤

使用三星A13这样的设备

Image

期待的正确结果

不产生crash

相关日志输出


pid: 0, tid: 31961 >>> com.dragonpass.en.latam <<<

backtrace: #00 pc 0x0000000000415dfe /data/misc/apexdata/com.android.art/dalvik-cache/arm/boot.oat (art_jni_trampoline+14) #01 pc 0x00000000000a0ac0 /apex/com.android.art/lib/libart.so (nterp_helper+4528) #02 pc 0x0000000000753350 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (com.alibaba.fastjson2.util.IOUtils.isNULL+16) #03 pc 0x000000000009f948 /apex/com.android.art/lib/libart.so (nterp_helper+56) #04 pc 0x00000000006e5a32 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (com.alibaba.fastjson2.JSONReaderUTF16.nextIfNullOrEmptyString+126) #05 pc 0x00000000000a0400 /apex/com.android.art/lib/libart.so (nterp_helper+2800) #06 pc 0x0000000000715c72 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (com.alibaba.fastjson2.reader.FieldReaderObject.readFieldValue+198) #07 pc 0x00000000000a0400 /apex/com.android.art/lib/libart.so (nterp_helper+2800) #08 pc 0x000000000071d8ce /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (com.alibaba.fastjson2.reader.ObjectReaderBean.readObject+774) #09 pc 0x00000000000a14d8 /apex/com.android.art/lib/libart.so (nterp_helper+7112) #10 pc 0x00000000006be6ae /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (com.alibaba.fastjson2.JSON.parseObject+98) #11 pc 0x000000000009f948 /apex/com.android.art/lib/libart.so (nterp_helper+56) #12 pc 0x0000000000725996 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (f6.c.G+46) #13 pc 0x0000000000109067 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/oat/arm/base.odex (f6.c$e.c+54) #14 pc 0x00000000000a046c /apex/com.android.art/lib/libart.so (nterp_helper+2908) #15 pc 0x00000000007254f8 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (f6.c$g.a+84) #16 pc 0x00000000000ed585 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/oat/arm/base.odex (f6.c.d+76) #17 pc 0x00000000000a0e1c /apex/com.android.art/lib/libart.so (nterp_helper+5388) #18 pc 0x0000000000722f60 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (d6.j$a.d+80) #19 pc 0x00000000000a0dac /apex/com.android.art/lib/libart.so (nterp_helper+5276) #20 pc 0x000000000085a102 /data/app/~~bVtfJ_wzmPJwh7-x60yKrg==/com.dragonpass.en.latam-cbZthO4YNDZlMqIuFV161Q==/base.apk (okhttp3.internal.connection.RealCall$AsyncCall.run+102) #21 pc 0x000000000067bb21 /data/misc/apexdata/com.android.art/dalvik-cache/arm/boot.oat (java.util.concurrent.ThreadPoolExecutor.runWorker+840) #22 pc 0x00000000006795a1 /data/misc/apexdata/com.android.art/dalvik-cache/arm/boot.oat (java.util.concurrent.ThreadPoolExecutor$Worker.run+64) #23 pc 0x000000000056e477 /data/misc/apexdata/com.android.art/dalvik-cache/arm/boot.oat (java.lang.Thread.run+70) #24 pc 0x00000000000a4775 /apex/com.android.art/lib/libart.so (art_quick_invoke_stub_internal+68) #25 pc 0x00000000005acb0d /apex/com.android.art/lib/libart.so (art_quick_invoke_stub+248) #26 pc 0x0000000000208dd5 /apex/com.android.art/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+120) #27 pc 0x0000000000517c2b /apex/com.android.art/lib/libart.so (art::Thread::CreateCallback(void*)+1106) #28 pc 0x0000000000080687 /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+40) #29 pc 0x0000000000039905 /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+30)

附加信息

Image

DarkAdventurerr avatar Jun 03 '25 03:06 DarkAdventurerr

@wenshao 请问这个是哪个版本带来的crash呢?之前我们用2.0.53版本线上看起来是没有这个问题的,用了2.0.56就有问题了

DarkAdventurerr avatar Jun 05 '25 03:06 DarkAdventurerr

我还没去排查,我争取这个周末去排查一遍

wenshao avatar Jun 16 '25 08:06 wenshao

https://github.com/alibaba/fastjson2/releases/tag/2.0.58 问题已修复,请用新版本

wenshao avatar Jul 30 '25 05:07 wenshao

https://github.com/alibaba/fastjson2/releases/tag/2.0.58 问题已修复,请用新版本

wenshao avatar Jul 30 '25 05:07 wenshao