From 2c34148db5ff1d5cdf7dd7d2248974a85f628c17 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 30 Dec 2004 23:51:18 +0000 Subject: r4420: - add usefull helper macros for allocation failures, they should be used in mostly all our code after calling a talloc_* function - the current NTSTATUS_TALLOC_CHECK() and WERR_TALLOC_CHECK() should be replaced by this new macros metze (This used to be commit b6376590f4b2409b2237809d378d9425fe1ce07e) --- source4/include/nt_status.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'source4') diff --git a/source4/include/nt_status.h b/source4/include/nt_status.h index 4e61d9a365..e95e1a745c 100644 --- a/source4/include/nt_status.h +++ b/source4/include/nt_status.h @@ -57,9 +57,22 @@ typedef uint32_t WERROR; #define NT_STATUS_IS_OK(x) (NT_STATUS_V(x) == 0) #define NT_STATUS_IS_ERR(x) ((NT_STATUS_V(x) & 0xc0000000) == 0xc0000000) #define NT_STATUS_EQUAL(x,y) (NT_STATUS_V(x) == NT_STATUS_V(y)) + +#define NT_STATUS_HAVE_NO_MOMORY(x) do { \ + if (!(x)) {\ + return NT_STATUS_NO_MEMORY;\ + }\ +} while (0) + #define W_ERROR_IS_OK(x) (W_ERROR_V(x) == 0) #define W_ERROR_EQUAL(x,y) (W_ERROR_V(x) == W_ERROR_V(y)) +#define W_ERROR_HAVE_NO_MOMORY(x) do { \ + if (!(x)) {\ + return WERR_NOMEM;\ + }\ +} while (0) + /* this defines special NTSTATUS codes to represent DOS errors. I have chosen this macro to produce status codes in the invalid NTSTATUS range */ -- cgit