From ebf36bca3312296243e048841f6890fd4fbdbc7a Mon Sep 17 00:00:00 2001 From: "Marshall T. Vandegrift" Date: Wed, 17 Dec 2008 18:18:54 -0500 Subject: [PATCH 1/2] Fix for platforms which don't size void *. --- src/calibre/utils/lzx/compressor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/calibre/utils/lzx/compressor.c b/src/calibre/utils/lzx/compressor.c index cf3c3f6e92..c53fa8c924 100644 --- a/src/calibre/utils/lzx/compressor.c +++ b/src/calibre/utils/lzx/compressor.c @@ -21,7 +21,7 @@ + ((compressor)->input.size - (compressor)->input.offset)) typedef struct buffer_t { - void *data; + unsigned char *data; unsigned int size; unsigned int offset; } buffer_t; From 5f961b14b70b745b05081a3eaeff100923b06fde Mon Sep 17 00:00:00 2001 From: "Marshall T. Vandegrift" Date: Wed, 17 Dec 2008 18:43:06 -0500 Subject: [PATCH 2/2] Fix to hopefully still work on Linux too. --- src/calibre/utils/lzx/compressor.c | 6 +++--- src/calibre/utils/lzx/lzxc.c | 6 +++++- src/calibre/utils/lzx/{stdint.h => msstdint.h} | 0 3 files changed, 8 insertions(+), 4 deletions(-) rename src/calibre/utils/lzx/{stdint.h => msstdint.h} (100%) diff --git a/src/calibre/utils/lzx/compressor.c b/src/calibre/utils/lzx/compressor.c index c53fa8c924..1c496a5c27 100644 --- a/src/calibre/utils/lzx/compressor.c +++ b/src/calibre/utils/lzx/compressor.c @@ -21,7 +21,7 @@ + ((compressor)->input.size - (compressor)->input.offset)) typedef struct buffer_t { - unsigned char *data; + char *data; unsigned int size; unsigned int offset; } buffer_t; @@ -222,7 +222,7 @@ Compressor_init(Compressor *self, PyObject *args, PyObject *kwds) static PyObject * Compressor_compress__( - Compressor *self, unsigned char *data, unsigned int inlen, int flush) + Compressor *self, char *data, unsigned int inlen, int flush) { buffer_t *residue = &self->residue; buffer_t *input = &self->input; @@ -305,7 +305,7 @@ static PyObject * Compressor_compress(Compressor *self, PyObject *args, PyObject *kwds) { static char *kwlist[] = {"data", "flush", NULL}; - unsigned char *data = NULL; + char *data = NULL; unsigned int inlen = 0; int flush = 0; diff --git a/src/calibre/utils/lzx/lzxc.c b/src/calibre/utils/lzx/lzxc.c index c5ad518bc2..ac1a5ed2a1 100644 --- a/src/calibre/utils/lzx/lzxc.c +++ b/src/calibre/utils/lzx/lzxc.c @@ -23,7 +23,11 @@ #include #include -#include +#ifdef _MSC_VER +# include "msstdint.h" +#else /* _MSC_VER */ +# include +#endif /* _MSC_VER */ #include /* for memset on Linux */ #include #include diff --git a/src/calibre/utils/lzx/stdint.h b/src/calibre/utils/lzx/msstdint.h similarity index 100% rename from src/calibre/utils/lzx/stdint.h rename to src/calibre/utils/lzx/msstdint.h