diff options
author | pcg <pcg> | 2003-12-23 04:52:00 +0000 |
---|---|---|
committer | pcg <pcg> | 2003-12-23 04:52:00 +0000 |
commit | d5607e01318876986723cab8e02cb479c7636e5d (patch) | |
tree | 3ad20b59dc62ff1ef5511538c5f899b14c5e6231 /lzf_d.c | |
parent | 3d0092ba13033a7f502240c12b748cebe6ed84cf (diff) |
*** empty log message ***
Diffstat (limited to 'lzf_d.c')
-rw-r--r-- | lzf_d.c | 21 |
1 files changed, 13 insertions, 8 deletions
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2000-2002 Marc Alexander Lehmann <pcg@goof.com> + * Copyright (c) 2000-2003 Marc Alexander Lehmann <pcg@goof.com> * * Redistribution and use in source and binary forms, with or without modifica- * tion, are permitted provided that the following conditions are met: @@ -26,16 +26,21 @@ * OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include <errno.h> - #include "lzfP.h" +#if AVOID_ERRNO +# define SET_ERRNO(n) +#else +# include <errno.h> +# define SET_ERRNO(n) errno = (n) +#endif + unsigned int lzf_decompress (const void *const in_data, unsigned int in_len, void *out_data, unsigned int out_len) { - u8 const *ip = in_data; - u8 *op = out_data; + u8 const *ip = (const u8 *)in_data; + u8 *op = (u8 *)out_data; u8 const *const in_end = ip + in_len; u8 *const out_end = op + out_len; @@ -49,7 +54,7 @@ lzf_decompress (const void *const in_data, unsigned int in_len, if (op + ctrl > out_end) { - errno = E2BIG; + SET_ERRNO (E2BIG); return 0; } @@ -76,13 +81,13 @@ lzf_decompress (const void *const in_data, unsigned int in_len, if (op + len + 2 > out_end) { - errno = E2BIG; + SET_ERRNO (E2BIG); return 0; } if (ref < (u8 *)out_data) { - errno = EINVAL; + SET_ERRNO (EINVAL); return 0; } |