关于KAEZlib块解压接口异常使用场景说明
KAEZlib模块提供了与zlib开源库兼容的部分压缩与解压缩接口。这包括用于流式处理的deflate/inflate接口,以及用于块式处理的compress/uncompress接口。
对于uncompress块解压接口,调用时需传入目标缓冲区的容量作为参数。这意味着调用者必须确保目标缓冲区的容量大于解压后的数据量。如果目标缓冲区容量不足,执行解压缩操作可能触发未定义行为,导致程序出现不可预测的运行结果。
因此,在解压缩原始数据大小未知的场景下,建议优先采用流式解压模式(inflate)进行处理。如果必须使用块解压接口(uncompress),则必须分配足够大的目标缓冲区,以保证其容量绝对充足。
父主题: 验证KAE相关