#define EC_INIT int ret = 0
#define EC_STATUS(a) ret = (a)
-#define EC_FAIL ret = -1; goto cleanup
+#define EC_FAIL do { ret = -1; goto cleanup; } while (0)
+#define EC_FAIL_LOG(a, ...) \
+ do { \
+ LOG(log_error, logtype_default, a, __VA_ARGS__); \
+ ret = -1; \
+ goto cleanup; \
+ } while (0)
#define EC_CLEANUP cleanup
-#define EC_EXIT goto cleanup
+#define EC_EXIT return ret
/*
* Check out doc/DEVELOPER for more infos.