diff options
Diffstat (limited to 'librabbitmq/amqp_private.h')
-rw-r--r-- | librabbitmq/amqp_private.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/librabbitmq/amqp_private.h b/librabbitmq/amqp_private.h index 98a7a65..03a46fe 100644 --- a/librabbitmq/amqp_private.h +++ b/librabbitmq/amqp_private.h @@ -115,13 +115,15 @@ extern int amqp_encode_table(amqp_bytes_t encoded, } \ }) -#define AMQP_CHECK_RESULT(expr) \ +#define AMQP_CHECK_RESULT_CLEANUP(expr, stmts) \ ({ \ int _result = (expr); \ - if (_result < 0) return _result; \ + if (_result < 0) { stmts; return _result; } \ _result; \ }) +#define AMQP_CHECK_RESULT(expr) AMQP_CHECK_RESULT_CLEANUP(expr, ) + #define AMQP_CHECK_EOF_RESULT(expr) \ ({ \ int _result = (expr); \ |