函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\xz\xz_dec_lzma2.c Create Date:2022-07-27 08:06:30
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Repeat given number of bytes from the given distance. If the distance is* invalid, false is returned. On success, true is returned and *len is* updated to indicate how many bytes were left to be repeated.

函数原型:static bool dict_repeat(struct dictionary *dict, uint32_t *len, uint32_t dist)

返回类型:bool

参数:

类型参数名称
struct dictionary *dict
uint32_t *len
uint32_tdist
351  如果dist大于等于How full dictionary is. This is used to detect corrupt input that* would read beyond the beginning of the uncompressed stream.dist大于等于Size of the dictionary as specified in Block Header. This is used* together with "full" to detect corrupt input that would make us* read beyond the beginning of the uncompressed stream.则返回:false
354  left等于min_t - return minimum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(size_t, Write limit; we don't write to buf[limit] or later bytes. - Position in buf , * len)
355  len减等于left
357  back等于Position in buf dist减1
358  如果dist大于等于Position in buf back加等于End of the dictionary buffer. In multi-call mode, this is* the same as the dictionary size. In single-call mode, this* indicates the size of the output buffer.
361  循环
362  Beginning of the history buffer [Position in buf ++]等于Beginning of the history buffer [back++]
363  如果back恒等于End of the dictionary buffer. In multi-call mode, this is* the same as the dictionary size. In single-call mode, this* indicates the size of the output buffer.back等于0
365 left先自减大于0循环
367  如果How full dictionary is. This is used to detect corrupt input that* would read beyond the beginning of the uncompressed stream.小于Position in buf How full dictionary is. This is used to detect corrupt input that* would read beyond the beginning of the uncompressed stream.等于Position in buf
370  返回:true
调用者
名称描述
lzma_mainLZMA decoder core