mirror of
https://github.com/mamoe/mirai.git
synced 2025-02-09 18:06:58 +08:00
Fix Desensitizer for NestedStructure
This commit is contained in:
parent
83d7c0d3d1
commit
aa53d92fbe
@ -216,17 +216,22 @@ private class DesensitizationVisitor(
|
||||
|
||||
val result = instance.cast<NestedStructureDesensitizer<ProtocolStruct, ProtocolStruct>>()
|
||||
.deserialize(desc.origin as ProtocolStruct, value.origin as ByteArray)
|
||||
?: desc.origin
|
||||
?.let { ValueDescAnalyzer.analyze(it) }
|
||||
|
||||
val generate = ValueDescAnalyzer.analyze(result)
|
||||
.transform(OptimizeByteArrayAsHexStringTransformer())
|
||||
.transform(DesensitizationVisitor(desensitizer))
|
||||
.renderToString()
|
||||
PlainValueDesc(
|
||||
desc,
|
||||
"$generate.toByteArray(${result::class.qualifiedName}.serializer())",
|
||||
value.origin
|
||||
)
|
||||
if (result == null) {
|
||||
value
|
||||
} else {
|
||||
val generate = ValueDescAnalyzer.analyze(result)
|
||||
.transform(OptimizeByteArrayAsHexStringTransformer())
|
||||
.transform(DesensitizationVisitor(desensitizer))
|
||||
.renderToString()
|
||||
|
||||
PlainValueDesc(
|
||||
desc,
|
||||
"$generate.toByteArray(${result::class.qualifiedName}.serializer())",
|
||||
value.origin
|
||||
)
|
||||
}
|
||||
} else value
|
||||
}
|
||||
}).let {
|
||||
|
Loading…
Reference in New Issue
Block a user