[gtk+] Fix some crashes caused by unimplemented functions in GdkOffscreenWindow
- From: Tristan Van Berkom <tvb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] Fix some crashes caused by unimplemented functions in GdkOffscreenWindow
- Date: Sat, 9 Apr 2011 05:01:40 +0000 (UTC)
commit d2303bafaea9dce5865a1764ce3bbaf04c523a9c
Author: Tristan Van Berkom <tristan van berkom gmail com>
Date: Sat Apr 9 01:55:50 2011 +0900
Fix some crashes caused by unimplemented functions in GdkOffscreenWindow
These crashes happen when accessing GtkWindow properties and the
GdkWindow is an offscreen (fixes https://bugzilla.gnome.org/show_bug.cgi?id=647244)
gdk/gdkoffscreenwindow.c | 25 ++++++++++++++++++-------
1 files changed, 18 insertions(+), 7 deletions(-)
---
diff --git a/gdk/gdkoffscreenwindow.c b/gdk/gdkoffscreenwindow.c
index 6ec5e4a..0b8b978 100644
--- a/gdk/gdkoffscreenwindow.c
+++ b/gdk/gdkoffscreenwindow.c
@@ -685,6 +685,18 @@ gdk_offscreen_window_set_boolean (GdkWindow *window,
}
static void
+gdk_offscreen_window_set_string (GdkWindow *window,
+ const gchar *setting)
+{
+}
+
+static void
+gdk_offscreen_window_set_wmfunctions (GdkWindow *window,
+ GdkWMFunction functions)
+{
+}
+
+static void
gdk_offscreen_window_set_transient_for (GdkWindow *window,
GdkWindow *another)
{
@@ -740,17 +752,17 @@ gdk_offscreen_window_class_init (GdkOffscreenWindowClass *klass)
impl_class->set_modal_hint = NULL;
impl_class->set_skip_taskbar_hint = gdk_offscreen_window_set_boolean;
impl_class->set_skip_pager_hint = gdk_offscreen_window_set_boolean;
- impl_class->set_urgency_hint = NULL;
+ impl_class->set_urgency_hint = gdk_offscreen_window_set_boolean;
impl_class->set_geometry_hints = NULL;
- impl_class->set_title = NULL;
- impl_class->set_role = NULL;
- impl_class->set_startup_id = NULL;
+ impl_class->set_title = gdk_offscreen_window_set_string;
+ impl_class->set_role = gdk_offscreen_window_set_string;
+ impl_class->set_startup_id = gdk_offscreen_window_set_string;
impl_class->set_transient_for = gdk_offscreen_window_set_transient_for;
impl_class->get_root_origin = NULL;
impl_class->get_frame_extents = NULL;
impl_class->set_override_redirect = NULL;
impl_class->set_accept_focus = NULL;
- impl_class->set_focus_on_map = NULL;
+ impl_class->set_focus_on_map = gdk_offscreen_window_set_boolean;
impl_class->set_icon_list = NULL;
impl_class->set_icon_name = NULL;
impl_class->iconify = gdk_offscreen_window_do_nothing;
@@ -767,8 +779,7 @@ gdk_offscreen_window_class_init (GdkOffscreenWindowClass *klass)
impl_class->set_group = NULL;
impl_class->set_decorations = NULL;
impl_class->get_decorations = NULL;
- impl_class->set_functions = NULL;
- impl_class->set_functions = NULL;
+ impl_class->set_functions = gdk_offscreen_window_set_wmfunctions;
impl_class->begin_resize_drag = NULL;
impl_class->begin_move_drag = NULL;
impl_class->enable_synchronized_configure = gdk_offscreen_window_do_nothing;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]