--- libaitrpc/inc/aitrpc.h 2010/07/08 12:29:38 1.1.1.1.2.21 +++ libaitrpc/inc/aitrpc.h 2011/03/15 15:46:58 1.1.1.1.2.22 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitrpc.h,v 1.1.1.1.2.21 2010/07/08 12:29:38 misho Exp $ +* $Id: aitrpc.h,v 1.1.1.1.2.22 2011/03/15 15:46:58 misho Exp $ * *************************************************************************/ #ifndef __AITRPC_H @@ -153,15 +153,16 @@ typedef struct { } while (0) -#define RPC_CALLBACK_CHK_RETARGS(f, n) do { \ - if (f->func_args != n) { \ - rpc_SetErr(22, "Error:: different number of arguments!\n"); \ +#define RPC_CALLBACK_CHECK_INPUT(x) do { \ + if (!x) { \ + rpc_SetErr(22, "Error:: invalid callback parameters ...\n"); \ return -1; \ } \ } while (0) -#define RPC_CALLBACK_CHECK_INPUT(f) do { \ - if (!f) { \ - rpc_SetErr(22, "Error:: invalid callback parameters ...\n"); \ +#define RPC_CALLBACK_CHK_ARGS(f, n) do { \ + RPC_CALLBACK_CHECK_INPUT(f); \ + if (f && f->func_args != n) { \ + rpc_SetErr(22, "Error:: different number of arguments!\n"); \ return -1; \ } \ } while (0)