函数逻辑报告 |
Source Code:lib\lzo\lzo1x_decompress_safe.c |
Create Date:2022-07-27 07:57:49 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:lzo1x_decompress_safe
函数原型:int lzo1x_decompress_safe(const unsigned char *in, size_t in_len, unsigned char *out, size_t *out_len)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
const unsigned char * | in | |
size_t | in_len | |
unsigned char * | out | |
size_t * | out_len |
45 | state等于0 |
55 | 如果此条件成立可能性小(为编译器优化)(in_len < 3)则转到:input_overrun |
58 | 如果此条件成立可能性大(为编译器优化)(in_len >= 5)且此条件成立可能性大(为编译器优化)( * ip == 17)则 |
59 | bitstream_version等于ip[1] |
60 | ip加等于2 |
61 | 否则 |
62 | bitstream_version等于0 |
65 | 如果ip大于17则 |
74 | 循环 |
76 | 如果t小于16则 |
77 | 如果此条件成立可能性大(为编译器优化)(state == 0)则 |
78 | 如果此条件成立可能性小(为编译器优化)(t == 0)则 |
82 | 当此条件成立可能性小(为编译器优化)( * ip == 0)循环 |
93 | t加等于3 |
94 | copy_literal_run : |
118 | state等于4 |
119 | 继续下一循环 |
120 | 否则如果state不等于4则 |
131 | 否则 |
138 | 否则如果t大于等于64则 |
144 | 否则如果t大于等于32则 |
146 | 如果此条件成立可能性小(为编译器优化)(t == 2)则 |
150 | 当此条件成立可能性小(为编译器优化)( * ip == 0)循环 |
160 | NEED_IP(2) |
163 | next等于get_unaligned_le16(ip) |
164 | ip加等于2 |
166 | next与等于3 |
167 | 否则 |
168 | NEED_IP(2) |
169 | next等于get_unaligned_le16(ip) |
170 | 如果next按位与0xfffc的值恒等于0xfffc且t按位与0xf8的值恒等于0x18且此条件成立可能性大(为编译器优化)(bitstream_version)则 |
183 | 否则 |
187 | 如果此条件成立可能性小(为编译器优化)(t == 2)则 |
191 | 当此条件成立可能性小(为编译器优化)( * ip == 0)循环 |
201 | NEED_IP(2) |
202 | next等于get_unaligned_le16(ip) |
204 | ip加等于2 |
206 | next与等于3 |
209 | m_pos减等于0x4000 |
252 | match_next : |
272 | eof_found : |
274 | 返回:如果如果如果t不等于3则LZO_E_ERROR否则ip恒等于ip_end则Return values (< 0 = Error)否则ip小于ip_end则LZO_E_INPUT_NOT_CONSUMED否则LZO_E_INPUT_OVERRUN |
278 | input_overrun : |
280 | 返回:LZO_E_INPUT_OVERRUN |
282 | output_overrun : |
284 | 返回:LZO_E_OUTPUT_OVERRUN |
286 | lookbehind_overrun : |
288 | 返回:LZO_E_LOOKBEHIND_OVERRUN |
名称 | 描述 |
---|---|
unlzo | |
lzo_decompress_threadfn | Deompression function that runs in its own thread. |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |