diff options
Diffstat (limited to 'al/alError.h')
-rw-r--r-- | al/alError.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/al/alError.h b/al/alError.h new file mode 100644 index 00000000..6408b60c --- /dev/null +++ b/al/alError.h @@ -0,0 +1,24 @@ +#ifndef AL_ERROR_H +#define AL_ERROR_H + +#include "AL/al.h" +#include "AL/alc.h" + +#include "logging.h" + + +extern bool TrapALError; + +void alSetError(ALCcontext *context, ALenum errorCode, const char *msg, ...) DECL_FORMAT(printf, 3, 4); + +#define SETERR_GOTO(ctx, err, lbl, ...) do { \ + alSetError((ctx), (err), __VA_ARGS__); \ + goto lbl; \ +} while(0) + +#define SETERR_RETURN(ctx, err, retval, ...) do { \ + alSetError((ctx), (err), __VA_ARGS__); \ + return retval; \ +} while(0) + +#endif |