Function report |
Source Code:lib\lzo\lzo1x_decompress_safe.c |
Create Date:2022-07-28 07:00:21 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:lzo1x_decompress_safe
Proto:int lzo1x_decompress_safe(const unsigned char *in, size_t in_len, unsigned char *out, size_t *out_len)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| const unsigned char * | in | |
| size_t | in_len | |
| unsigned char * | out | |
| size_t * | out_len |
| 45 | state = 0 |
| 55 | If Value for the false possibility is greater at compile time(in_len < 3) Then Go to input_overrun |
| 58 | If Value is more likely to compile time(in_len >= 5) && Value is more likely to compile time( * ip == 17) Then |
| 59 | bitstream_version = ip[1] |
| 60 | ip += 2 |
| 61 | Else |
| 62 | bitstream_version = 0 |
| 65 | If ip > 17 Then |
| 74 | cycle |
| 76 | If t < 16 Then |
| 77 | If Value is more likely to compile time(state == 0) Then |
| 78 | If Value for the false possibility is greater at compile time(t == 0) Then |
| 82 | When Value for the false possibility is greater at compile time( * ip == 0) cycle |
| 93 | t += 3 |
| 94 | copy_literal_run : |
| 118 | state = 4 |
| 119 | Continue |
| 120 | Else if state != 4 Then |
| 131 | Else |
| 138 | Else if t >= 64 Then |
| 144 | Else if t >= 32 Then |
| 146 | If Value for the false possibility is greater at compile time(t == 2) Then |
| 150 | When Value for the false possibility is greater at compile time( * ip == 0) cycle |
| 160 | NEED_IP(2) |
| 163 | next = get_unaligned_le16(ip) |
| 164 | ip += 2 |
| 166 | next &= 3 |
| 167 | Else |
| 168 | NEED_IP(2) |
| 169 | next = get_unaligned_le16(ip) |
| 170 | If (next & 0xfffc) == 0xfffc && (t & 0xf8) == 0x18 && Value is more likely to compile time(bitstream_version) Then |
| 173 | NEED_IP(3) |
| 174 | t &= 7 |
| 176 | t += MIN_ZERO_RUN_LENGTH |
| 180 | next &= 3 |
| 181 | ip += 3 |
| 182 | Go to match_next |
| 183 | Else |
| 187 | If Value for the false possibility is greater at compile time(t == 2) Then |
| 191 | When Value for the false possibility is greater at compile time( * ip == 0) cycle |
| 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 | Return If If If t != 3 Then LZO_E_ERROR Else ip == ip_end Then Return values (< 0 = Error) Else ip < ip_end Then LZO_E_INPUT_NOT_CONSUMED Else LZO_E_INPUT_OVERRUN |
| 278 | input_overrun : |
| 280 | Return LZO_E_INPUT_OVERRUN |
| 282 | output_overrun : |
| 284 | Return LZO_E_OUTPUT_OVERRUN |
| 286 | lookbehind_overrun : |
| 288 | Return LZO_E_LOOKBEHIND_OVERRUN |
| Name | Describe |
|---|---|
| unlzo |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |