diff options
author | Scarlett <scarlett@xavin.net> | 2015-01-15 10:38:11 +0000 |
---|---|---|
committer | Tatsuya Kinoshita <tats@debian.org> | 2015-01-15 10:38:11 +0000 |
commit | cbec7032ee36346649fc5ebecc4b1c01f01178f1 (patch) | |
tree | 69907176f0aed9cef693dbbfd0398fa561c4a4cc /matrix.c | |
parent | Merge branch 'bug/printf' (diff) | |
download | w3m-cbec7032ee36346649fc5ebecc4b1c01f01178f1.tar.gz w3m-cbec7032ee36346649fc5ebecc4b1c01f01178f1.zip |
Add overflow detection
Origin: http://marc.info/?l=openbsd-ports&m=142090828929750&w=2
* main.c: Call exit(1) when out of memory to avoid dereferencing null
pointers when gc's malloc fails.
* alloc.h: Replacements for w3m's allocation macros which add
overflow detection and concentrate the macros in one file.
* indep.h, libwc/charset.c, libwc/status.c, matrix.c: Use the
overflow-detecting allocation macros from alloc.h.
Diffstat (limited to '')
-rw-r--r-- | matrix.c | 8 |
1 files changed, 1 insertions, 7 deletions
@@ -34,18 +34,12 @@ #include "config.h" #include "matrix.h" -#include <gc.h> +#include "alloc.h" /* * Macros from "fm.h". */ -#define New(type) ((type*)GC_MALLOC(sizeof(type))) -#define NewAtom(type) ((type*)GC_MALLOC_ATOMIC(sizeof(type))) -#define New_N(type,n) ((type*)GC_MALLOC((n)*sizeof(type))) -#define NewAtom_N(type,n) ((type*)GC_MALLOC_ATOMIC((n)*sizeof(type))) -#define Renew_N(type,ptr,n) ((type*)GC_REALLOC((ptr),(n)*sizeof(type))) - #define SWAPD(a,b) { double tmp = a; a = b; b = tmp; } #define SWAPI(a,b) { int tmp = a; a = b; b = tmp; } |