#include <limits.h>
#include <stdint.h>
#include <string.h>
#include "avassert.h"
#include "intreadwrite.h"
#include "lzo.h"
#include "macros.h"
#include "mem.h"
Go to the source code of this file.
◆ OUTBUF_PADDED
Define if we may write up to 12 bytes beyond the output buffer.
Definition at line 33 of file lzo.c.
◆ INBUF_PADDED
Define if we may read up to 8 bytes beyond the input buffer.
Definition at line 35 of file lzo.c.
◆ GETB
#define GETB |
( |
|
c | ) |
(*(c).in++) |
Definition at line 56 of file lzo.c.
◆ get_byte()
Reads one byte from the input buffer, avoiding an overrun.
- Returns
- byte read
Definition at line 47 of file lzo.c.
Referenced by get_len().
◆ get_len()
static int get_len |
( |
LZOContext * |
c, |
|
|
int |
x, |
|
|
int |
mask |
|
) |
| |
|
inlinestatic |
Decodes a length value in the coding used by lzo.
- Parameters
-
x | previous byte value |
mask | bits used from x |
- Returns
- decoded length value
Definition at line 67 of file lzo.c.
Referenced by av_lzo1x_decode().
◆ copy()
Copies bytes from input to output buffer with checking.
- Parameters
-
cnt | number of bytes to copy, must be >= 0 |
Definition at line 87 of file lzo.c.
Referenced by av_lzo1x_decode().
◆ copy_backptr()
static void copy_backptr |
( |
LZOContext * |
c, |
|
|
int |
back, |
|
|
int |
cnt |
|
) |
| |
|
inlinestatic |
Copies previously decoded bytes to current position.
- Parameters
-
back | how many bytes back we start, must be > 0 |
cnt | number of bytes to copy, must be > 0 |
cnt > back is valid, this will copy the bytes we just copied, thus creating a repeating pattern with a period length of back.
Definition at line 120 of file lzo.c.
Referenced by av_lzo1x_decode().