-#define DEBUG(fmt, ...) do { if (sp_debug_handler) sp_debug_handler(fmt ".\n", ##__VA_ARGS__); } while (0)
-#define DEBUG_ERROR(err, fmt, ...) DEBUG("%s returning " #err ": " fmt, __func__, ##__VA_ARGS__)
-#define DEBUG_FAIL(fmt, ...) do { \
+#define DEBUG_FMT(fmt, ...) do { \
+ if (sp_debug_handler) \
+ sp_debug_handler(fmt ".\n", __VA_ARGS__); \
+} while (0)
+#define DEBUG(msg) DEBUG_FMT(msg, NULL)
+#define DEBUG_ERROR(err, msg) DEBUG_FMT("%s returning " #err ": " msg, __func__)
+#define DEBUG_FAIL(msg) do { \