summaryrefslogtreecommitdiffstats
path: root/rwsdk/include/d3d8/rpdbgerr.c
diff options
context:
space:
mode:
authoraap <aap@papnet.eu>2019-05-18 12:39:39 +0200
committeraap <aap@papnet.eu>2019-05-18 12:39:39 +0200
commit9e496100b7baff8834658f577d3138d9f8fc3765 (patch)
treea725be9b0dba9a4ce76c19a6629ef62c36e46814 /rwsdk/include/d3d8/rpdbgerr.c
parentfixed pathfind (diff)
downloadre3-9e496100b7baff8834658f577d3138d9f8fc3765.tar
re3-9e496100b7baff8834658f577d3138d9f8fc3765.tar.gz
re3-9e496100b7baff8834658f577d3138d9f8fc3765.tar.bz2
re3-9e496100b7baff8834658f577d3138d9f8fc3765.tar.lz
re3-9e496100b7baff8834658f577d3138d9f8fc3765.tar.xz
re3-9e496100b7baff8834658f577d3138d9f8fc3765.tar.zst
re3-9e496100b7baff8834658f577d3138d9f8fc3765.zip
Diffstat (limited to '')
-rw-r--r--rwsdk/include/d3d8/rpdbgerr.c90
1 files changed, 90 insertions, 0 deletions
diff --git a/rwsdk/include/d3d8/rpdbgerr.c b/rwsdk/include/d3d8/rpdbgerr.c
new file mode 100644
index 00000000..0c83c04e
--- /dev/null
+++ b/rwsdk/include/d3d8/rpdbgerr.c
@@ -0,0 +1,90 @@
+/*
+ * Debug handling
+ *
+ ****************************************************************************
+ *
+ * This file is a product of Criterion Software Ltd.
+ *
+ * This file is provided as is with no warranties of any kind and is
+ * provided without any obligation on Criterion Software Ltd. or
+ * Canon Inc. to assist in its use or modification.
+ *
+ * Criterion Software Ltd. will not, under any
+ * circumstances, be liable for any lost revenue or other damages arising
+ * from the use of this file.
+ *
+ * Copyright (c) 1998 Criterion Software Ltd.
+ * All Rights Reserved.
+ *
+ * RenderWare is a trademark of Canon Inc.
+ *
+ ****************************************************************************/
+
+/****************************************************************************
+ Includes
+ */
+
+
+#include <stdlib.h>
+#include <string.h>
+
+#include <rwcore.h>
+#include <rpdbgerr.h>
+
+static const char rcsid[] __RWUNUSED__ = "@@(#)$Id: //RenderWare/RW33Active/dev/rwsdk/src/plcore/rpdbgerr.c#1 $";
+
+#ifdef RWDEBUG
+
+/****************************************************************************
+ Defines
+ */
+
+ /****************************************************************************
+ Local (static) Globals
+ */
+
+/* The strings used in the debug error reporting are derived from the
+ * .def files
+ */
+
+#define RWECODE(a,b) RWSTRING(b),
+
+static const RwChar *rw_err_str[] =
+{
+#include "rperror.def"
+ RWSTRING("Last Error")
+};
+
+#undef RWECODE
+#define RWECODE(a,b) RWSTRING(#a),
+
+static const RwChar *rw_err_cstr[] =
+{
+#include "rperror.def"
+ RWSTRING("E_RW_LAST")
+};
+
+#undef RWECODE
+
+static RwChar dberr[512];
+
+RwChar *
+rwPLUGIN_ERRFUNC(RwInt32 code,...)
+{
+ va_list ap;
+
+#if (0)
+ RWFUNCTION(RWSTRING("rwPLUGIN_ERRFUNC"));
+#endif /* (0) */
+
+ va_start(ap, code);
+
+ rwstrcpy(dberr, rw_err_cstr[code]);
+ rwstrcat(dberr, RWSTRING(" : "));
+ rwvsprintf(&dberr[rwstrlen(dberr)], rw_err_str[code], ap);
+ va_end(ap);
+ return dberr;
+}
+
+#endif /* RWDEBUG */
+