summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/autotrace/exception.c
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:24:48 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:24:48 +0000
commitcca66b9ec4e494c1d919bff0f71a820d8afab1fa (patch)
tree146f39ded1c938019e1ed42d30923c2ac9e86789 /src/3rdparty/autotrace/exception.c
parentInitial commit. (diff)
downloadinkscape-upstream.tar.xz
inkscape-upstream.zip
Adding upstream version 1.2.2.upstream/1.2.2upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--src/3rdparty/autotrace/exception.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/3rdparty/autotrace/exception.c b/src/3rdparty/autotrace/exception.c
new file mode 100644
index 0000000..c98777e
--- /dev/null
+++ b/src/3rdparty/autotrace/exception.c
@@ -0,0 +1,47 @@
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif /* Def: HAVE_CONFIG_H */
+
+#include "exception.h"
+
+at_exception_type at_exception_new(at_msg_func client_func, gpointer client_data)
+{
+ at_exception_type e;
+ e.msg_type = AT_MSG_NOT_SET;
+ e.client_func = client_func;
+ e.client_data = client_data;
+ return e;
+}
+
+gboolean at_exception_got_fatal(at_exception_type * exception)
+{
+ return (exception->msg_type == AT_MSG_FATAL) ? TRUE : FALSE;
+}
+
+void at_exception_fatal(at_exception_type * exception, const gchar * message)
+{
+ if (!exception)
+ return;
+ exception->msg_type = AT_MSG_FATAL;
+ if (exception->client_func) {
+ exception->client_func(message, AT_MSG_FATAL, exception->client_data);
+ }
+}
+
+void at_exception_warning(at_exception_type * exception, const gchar * message)
+{
+ if (!exception)
+ return;
+ exception->msg_type = AT_MSG_WARNING;
+ if (exception->client_func) {
+ exception->client_func(message, AT_MSG_WARNING, exception->client_data);
+ }
+}
+
+GQuark at_error_quark(void)
+{
+ static GQuark q = 0;
+ if (q == 0)
+ q = g_quark_from_static_string("at-error-quark");
+ return q;
+}