From d8adce898314b44312b9a9f625e2a7cb3ed42600 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 1 Jun 2001 19:54:58 +0000 Subject: [PATCH] Check for malloc failure. --- src/backend/commands/sequence.c | 9 ++++++--- src/backend/lib/dllist.c | 6 +++++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/backend/commands/sequence.c b/src/backend/commands/sequence.c index f37b6199b2..d5437afa73 100644 --- a/src/backend/commands/sequence.c +++ b/src/backend/commands/sequence.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/sequence.c,v 1.56 2001/05/27 09:59:29 petere Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/sequence.c,v 1.57 2001/06/01 19:52:24 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -646,8 +646,11 @@ init_sequence(char *caller, char *name) * as the backend does, so we use plain malloc for them. */ elm = (SeqTable) malloc(sizeof(SeqTableData)); - elm->name = malloc(strlen(name) + 1); - strcpy(elm->name, name); + if (elm == NULL) + elog(ERROR, "Memory exhausted in init_sequence"); + elm->name = strdup(name); + if (elm->name == NULL) + elog(ERROR, "Memory exhausted in init_sequence"); elm->rel = seqrel; elm->relid = RelationGetRelid(seqrel); elm->cached = elm->last = elm->increment = 0; diff --git a/src/backend/lib/dllist.c b/src/backend/lib/dllist.c index 9f2135cc9a..6f88bfea25 100644 --- a/src/backend/lib/dllist.c +++ b/src/backend/lib/dllist.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/lib/dllist.c,v 1.21 2001/02/10 02:31:26 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/lib/dllist.c,v 1.22 2001/06/01 19:54:58 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -32,6 +32,8 @@ DLNewList(void) Dllist *l; l = (Dllist *) malloc(sizeof(Dllist)); + if (l == NULL) + elog(ERROR, "Memory exhausted in DLNewList"); l->dll_head = 0; l->dll_tail = 0; @@ -66,6 +68,8 @@ DLNewElem(void *val) Dlelem *e; e = (Dlelem *) malloc(sizeof(Dlelem)); + if (e == NULL) + elog(ERROR, "Memory exhausted in DLNewElem"); e->dle_next = 0; e->dle_prev = 0; e->dle_val = val;