函数逻辑报告 |
Source Code:lib\decompress_bunzip2.c |
Create Date:2022-07-27 07:14:10 |
| Last Modify:2020-03-15 22:49:38 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Example usage: decompress src_fd to dst_fd. (Stops at end of bzip2 data,not end of file.)
函数原型:STATIC int __attribute__((__section__(".init.text"))) __attribute__((__cold__))bunzip2(unsigned char *buf, long len, long (*fill)(void *, unsigned long ), long (*flush)(void *, unsigned long ), unsigned char *outbuf, long *pos, void (*error)(char *x))
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| unsigned char * | buf | |
| long | len | |
| long (* | fill | |
| long (* | flush | |
| unsigned char * | outbuf | |
| long * | pos | |
| void (* | error |
| 687 | i等于负1 |
| 693 | 如果非outbuf则 |
| 694 | error("Could not allocate output buffer") |
| 695 | 返回:RETVAL_OUT_OF_MEMORY |
| 699 | 否则inbuf等于Use defines rather than static inline in order to avoid spurious* warnings when not needed (indeed large_malloc / large_free are not* needed by inflate (Other housekeeping constants ) |
| 701 | 如果非inbuf则 |
| 707 | 如果非i则 |
| 708 | 循环 |
| 717 | 退出 |
| 722 | 如果i恒等于RETVAL_LAST_BLOCK则 |
| 723 | 如果The CRC values stored in the block header and calculated from thedata 不等于The CRC values stored in the block header and calculated from thedata 则error("Data integrity error when decompressing.") |
| 725 | 否则i等于Status return values |
| 727 | 否则如果i恒等于RETVAL_UNEXPECTED_OUTPUT_EOF则 |
| 728 | error("Compressed file ends unexpectedly") |
| 732 | 如果Intermediate buffer and its size (in bytes) 则large_free(Intermediate buffer and its size (in bytes) ) |
| 734 | 如果pos则pos等于, outbufPos |
| 737 | exit_1 : |
| 740 | exit_0 : |
| 743 | 返回:i |
| 名称 | 描述 |
|---|---|
| __decompress |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |