Fix multiple compilation errors and memory leaks.

- Rename malloc_message() because it was causing a compilation error on
  FreeBSD.
- Use correct type as a return from gzdopen().
- Memory allocation, header file includes, etc.
This commit is contained in:
Daniel Spiljar 2023-02-10 13:26:45 +01:00
parent 3db6edf467
commit 654d98cbb4
Signed by: dspiljar
GPG Key ID: A32CE9C59D8003B5
8 changed files with 14 additions and 9 deletions

View File

@ -122,7 +122,7 @@ maildir_read_message (maildir_t *mdp)
static FILE *fp; static FILE *fp;
static int s; static int s;
message = malloc_message (); message = allocate_message ();
for(;;) for(;;)
{ {

View File

@ -237,7 +237,7 @@ mbox_read_message (mbox_t * mp)
char buffer[BUFSIZ]; char buffer[BUFSIZ];
message_t *message; message_t *message;
message = malloc_message (); message = allocate_message ();
s = strlen (mp->postmark_cache); s = strlen (mp->postmark_cache);
message->headers = message->headers =

View File

@ -87,7 +87,7 @@ message_t *mh_read_message (DIR *dp)
char buffer[BUFSIZ], *filename; char buffer[BUFSIZ], *filename;
FILE *fp; FILE *fp;
message = malloc_message (); message = allocate_message ();
filename = NULL; filename = NULL;

View File

@ -139,7 +139,7 @@ char * parse_return_path(char *rpath)
} }
/* }}} */ /* }}} */
void * malloc_message (void) void * allocate_message (void)
{ {
message_t *message; message_t *message;

View File

@ -29,7 +29,7 @@ format_t folder_format (const char *name);
lockmethod_t lock_method (const char *name); lockmethod_t lock_method (const char *name);
/* time_t parse_date(char *datestr); */ /* time_t parse_date(char *datestr); */
char * parse_return_path(char *rpath); char * parse_return_path(char *rpath);
void * malloc_message (void); void * allocate_message (void);
void postmark_print (message_t *msg); void postmark_print (message_t *msg);
void set_default_options (void); void set_default_options (void);
void get_runtime_options (int *argc, char **argv, struct option *long_options); void get_runtime_options (int *argc, char **argv, struct option *long_options);

View File

@ -26,6 +26,7 @@
#endif /* HAVE_LIBPCRE */ #endif /* HAVE_LIBPCRE */
#include "mboxgrep.h" #include "mboxgrep.h"
#include "message.h" #include "message.h"
#include "wrap.h" /* xcalloc() et cetera */
#ifdef HAVE_LIBPCRE #ifdef HAVE_LIBPCRE
void void
@ -82,6 +83,7 @@ regex_init (void)
if (config.extended) if (config.extended)
flag2 = REG_EXTENDED; flag2 = REG_EXTENDED;
config.posix_pattern = (regex_t *) xmalloc (sizeof (regex_t));
errcode = regcomp ((regex_t *) config.posix_pattern, config.regex_s, errcode = regcomp ((regex_t *) config.posix_pattern, config.regex_s,
(flag1 | flag2 | REG_NEWLINE )); (flag1 | flag2 | REG_NEWLINE ));
if (0 != errcode) if (0 != errcode)

View File

@ -42,6 +42,9 @@
#ifdef HAVE_LIBZ #ifdef HAVE_LIBZ
#include <zlib.h> #include <zlib.h>
#endif /* HAVE_LIBZ */ #endif /* HAVE_LIBZ */
#ifdef HAVE_LIBBZ2
#include <bzlib.h>
#endif /* HAVE_LIBBZ2 */
#include <sys/types.h> #include <sys/types.h>
#include <sys/stat.h> #include <sys/stat.h>
@ -108,9 +111,9 @@ FILE *m_fdopen (int fildes, const char *mode)
#ifdef HAVE_LIBZ #ifdef HAVE_LIBZ
gzFile *m_gzdopen (int fildes, const char *mode) gzFile m_gzdopen (int fildes, const char *mode)
{ {
gzFile *blah; gzFile blah;
blah = gzdopen (fildes, mode); blah = gzdopen (fildes, mode);
if (blah == NULL) if (blah == NULL)

View File

@ -56,7 +56,7 @@ int m_open (const char *pathname, int flags, mode_t mode);
FILE *m_fopen (const char *path, const char *mode); FILE *m_fopen (const char *path, const char *mode);
FILE *m_fdopen (int fildes, const char *mode); FILE *m_fdopen (int fildes, const char *mode);
#ifdef HAVE_LIBZ #ifdef HAVE_LIBZ
gzFile *m_gzdopen (int fildes, const char *mode); gzFile m_gzdopen (int fildes, const char *mode);
void gzwrite_loop (void *fp, char *str); void gzwrite_loop (void *fp, char *str);
#endif /* HAVE_LIBZ */ #endif /* HAVE_LIBZ */
#ifdef HAVE_LIBBZ2 #ifdef HAVE_LIBBZ2