From 0f7ab3dc0ed5cfddfc3002992f0525756b6b670e Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 20:02:09 +0200 Subject: Adding upstream version 3.46.8. Signed-off-by: Daniel Baumann --- src/terminal-debug.hh | 78 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 src/terminal-debug.hh (limited to 'src/terminal-debug.hh') diff --git a/src/terminal-debug.hh b/src/terminal-debug.hh new file mode 100644 index 0000000..fedc9e4 --- /dev/null +++ b/src/terminal-debug.hh @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2002 Red Hat, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* The interfaces in this file are subject to change at any time. */ + +#ifndef ENABLE_DEBUG_H +#define ENABLE_DEBUG_H + +#include + +G_BEGIN_DECLS + +typedef enum { + TERMINAL_DEBUG_ACCELS = 1 << 0, + TERMINAL_DEBUG_CLIPBOARD = 1 << 1, + TERMINAL_DEBUG_ENCODINGS = 1 << 2, + TERMINAL_DEBUG_SERVER = 1 << 3, + TERMINAL_DEBUG_GEOMETRY = 1 << 4, + TERMINAL_DEBUG_MDI = 1 << 5, + TERMINAL_DEBUG_PROCESSES = 1 << 6, + TERMINAL_DEBUG_PROFILE = 1 << 7, + TERMINAL_DEBUG_SETTINGS_LIST = 1 << 8, + TERMINAL_DEBUG_SEARCH = 1 << 9, + TERMINAL_DEBUG_BRIDGE = 1 << 10, + TERMINAL_DEBUG_DEFAULT = 1 << 11, +} TerminalDebugFlags; + +void _terminal_debug_init(void); + +extern TerminalDebugFlags _terminal_debug_flags; +static inline gboolean _terminal_debug_on (TerminalDebugFlags flags) G_GNUC_CONST G_GNUC_UNUSED; + +static inline gboolean +_terminal_debug_on (TerminalDebugFlags flags) +{ + return (_terminal_debug_flags & flags) == flags; +} + +#ifdef ENABLE_DEBUG +#define _TERMINAL_DEBUG_IF(flags) if (G_UNLIKELY (_terminal_debug_on (flags))) +#else +#define _TERMINAL_DEBUG_IF(flags) if (0) +#endif + +#if defined(__GNUC__) && G_HAVE_GNUC_VARARGS +#define _terminal_debug_print(flags, fmt, ...) \ + G_STMT_START { _TERMINAL_DEBUG_IF(flags) g_printerr(fmt, ##__VA_ARGS__); } G_STMT_END +#else +#include +#include +static void _terminal_debug_print (guint flags, const char *fmt, ...) +{ + if (_terminal_debug_on (flags)) { + va_list ap; + va_start (ap, fmt); + g_vfprintf (stderr, fmt, ap); + va_end (ap); + } +} +#endif + +G_END_DECLS + +#endif /* !ENABLE_DEBUG_H */ -- cgit v1.2.3