From 7cc63b001ceaf81143795321379c835486d0c92e Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Wed, 1 Nov 2017 09:07:35 +0100 Subject: fix misc NULL pointer exceptions --- src/include/extractor.h | 2 +- src/plugins/gif_extractor.c | 16 +++++++++------- src/plugins/it_extractor.c | 6 +++--- src/plugins/nsfe_extractor.c | 8 ++++---- src/plugins/s3m_extractor.c | 2 +- src/plugins/sid_extractor.c | 24 ++++++++++++------------ src/plugins/xm_extractor.c | 8 ++++---- 21 files changed, 169 insertions(+), 162 deletions(-) * asturm: Cleaned up unrelated whitespace and translations changes. diff --git a/src/include/extractor.h b/src/include/extractor.h index 0325dc6..782134b 100644 --- a/src/include/extractor.h +++ b/src/include/extractor.h @@ -35,7 +35,7 @@ extern "C" { * 0.2.6-1 => 0x00020601 * 4.5.2-0 => 0x04050200 */ -#define EXTRACTOR_VERSION 0x01060000 +#define EXTRACTOR_VERSION 0x01060001 #include diff --git a/src/plugins/gif_extractor.c b/src/plugins/gif_extractor.c index aae2b82..8ee5807 100644 @@ -122,6 +122,8 @@ EXTRACTOR_gif_extract_method (struct EXTRACTOR_ExtractContext *ec) if (GIF_OK != DGifGetExtension (gif_file, &et, &ext)) continue; + if (NULL == ext) + continue; if (COMMENT_EXT_FUNC_CODE == et) { ec->proc (ec->cls, --- a/src/plugins/it_extractor.c +++ b/src/plugins/it_extractor.c @@ -70,7 +70,7 @@ EXTRACTOR_it_extract_method (struct EXTRACTOR_ExtractContext *ec) char itversion[8]; const struct Header *head; - if (HEADER_SIZE > + if ((ssize_t) HEADER_SIZE > ec->read (ec->cls, &data, HEADER_SIZE)) --- a/src/plugins/nsfe_extractor.c +++ b/src/plugins/nsfe_extractor.c @@ -175,7 +175,7 @@ info_extract (struct EXTRACTOR_ExtractContext *ec, if (size < 8) return 0; - if (size > + if ((ssize_t) size > ec->read (ec->cls, &data, size)) @@ -243,7 +243,7 @@ tlbl_extract (struct EXTRACTOR_ExtractContext *ec, void *data; const char *cdata; - if (size > + if ((ssize_t) size > ec->read (ec->cls, &data, size)) @@ -285,7 +285,7 @@ auth_extract (struct EXTRACTOR_ExtractContext *ec, if (left < 1) return 0; - if (size > + if ((ssize_t) size > ec->read (ec->cls, &data, size)) @@ -342,7 +342,7 @@ EXTRACTOR_nsfe_extract_method (struct EXTRACTOR_ExtractContext *ec) uint32_t chunksize; int ret; - if (sizeof (struct header) > + if ((ssize_t) sizeof (struct header) > ec->read (ec->cls, &data, sizeof (struct header))) --- a/src/plugins/s3m_extractor.c +++ b/src/plugins/s3m_extractor.c @@ -80,7 +80,7 @@ EXTRACTOR_s3m_extract_method (struct EXTRACTOR_ExtractContext *ec) struct S3MHeader header; char song_name_NT[29]; - if (sizeof (header) > + if ((ssize_t) sizeof (header) > ec->read (ec->cls, &data, sizeof (header))) --- a/src/plugins/sid_extractor.c +++ b/src/plugins/sid_extractor.c @@ -176,7 +176,7 @@ EXTRACTOR_sid_extract_method (struct EXTRACTOR_ExtractContext *ec) const struct header *head; void *data; - if (sizeof (struct header) > + if ((ssize_t) sizeof (struct header) > ec->read (ec->cls, &data, sizeof (struct header))) --- a/src/plugins/xm_extractor.c +++ b/src/plugins/xm_extractor.c @@ -70,7 +70,7 @@ EXTRACTOR_xm_extract_method (struct EXTRACTOR_ExtractContext *ec) char xmversion[8]; size_t n; - if (sizeof (struct Header) > + if ((ssize_t) sizeof (struct Header) > ec->read (ec->cls, &data, sizeof (struct Header))) -- cgit v1.1