mutter/mtk/mtk/mtk-x11-errors.h
Carlos Garnacho 6bda46095a mtk: Add API for X11 errors
We currently have a bit of a disaster area wrt X11 error handling,
with all of Cogl/Clutter/Mutter offering implementations with different
expectations and different degrees of integration with other error
handlers.

It makes more sense to have a single X11 error handling implementation
that is used in all those places. Mtk seems like the reasonable place
to have this kind of general API, so adopt the more advanced code
at src/x11.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3230>
2023-09-02 09:52:54 +00:00

42 lines
1.1 KiB
C

/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/* Mutter X error handling */
/*
* Copyright (C) 2001 Havoc Pennington
*
* 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 2 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "mtk/mtk-macros.h"
#include <X11/Xlib.h>
MTK_EXPORT
void mtk_x11_errors_init (void);
MTK_EXPORT
void mtk_x11_errors_deinit (void);
MTK_EXPORT
void mtk_x11_error_trap_push (Display *xdisplay);
MTK_EXPORT
void mtk_x11_error_trap_pop (Display *xdisplay);
MTK_EXPORT
int mtk_x11_error_trap_pop_with_return (Display *xdisplay);