From b0d3d94b8ca94d1a133f74050d078a4bd6fa5260 Mon Sep 17 00:00:00 2001 From: Raghavendra G Date: Sun, 23 Aug 2009 22:29:29 +0000 Subject: common-utils: introduce new macro GF_VALIDATE_OR_GOTO_WITH_ERROR - the existing macro GF_VALIDATE_OR_GOTO sets errno to EINVAL which may not be appropriate in all cases. Signed-off-by: Anand V. Avati BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221 --- libglusterfs/src/common-utils.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'libglusterfs/src/common-utils.h') diff --git a/libglusterfs/src/common-utils.h b/libglusterfs/src/common-utils.h index c90342f7a..248efc83c 100644 --- a/libglusterfs/src/common-utils.h +++ b/libglusterfs/src/common-utils.h @@ -116,6 +116,15 @@ extern char *gf_cbk_list[GF_CBK_MAXVALUE]; } \ } while (0); +#define GF_VALIDATE_OR_GOTO_WITH_ERROR(name, arg, label, error) do { \ + if (!arg) { \ + errno = error; \ + gf_log (name, GF_LOG_ERROR, \ + "invalid argument: " #arg); \ + goto label; \ + } \ + }while (0); + #define GF_VALIDATE_ABSOLUTE_PATH_OR_GOTO(name,arg,label) \ do { \ GF_VALIDATE_OR_GOTO (name, arg, label); \ -- cgit