aboutsummaryrefslogtreecommitdiff
path: root/x11-wm/emerald
diff options
context:
space:
mode:
authorFlorent Thoumie <flz@FreeBSD.org>2007-10-29 19:36:13 +0000
committerFlorent Thoumie <flz@FreeBSD.org>2007-10-29 19:36:13 +0000
commit9652d8e2fed1d8feb04fc2bc485855cdd658a1f0 (patch)
tree93be4cda47d8a0a1322f9d95337e332b6ef392d4 /x11-wm/emerald
parent6db750263b7b164c8c73b9d8fafb3a0bb0a3f548 (diff)
downloadports-9652d8e2fed1d8feb04fc2bc485855cdd658a1f0.tar.gz
ports-9652d8e2fed1d8feb04fc2bc485855cdd658a1f0.zip
Notes
Diffstat (limited to 'x11-wm/emerald')
-rw-r--r--x11-wm/emerald/Makefile1
-rw-r--r--x11-wm/emerald/files/patch-src_main.c48
2 files changed, 49 insertions, 0 deletions
diff --git a/x11-wm/emerald/Makefile b/x11-wm/emerald/Makefile
index c8447630501f..3bcd63febfbb 100644
--- a/x11-wm/emerald/Makefile
+++ b/x11-wm/emerald/Makefile
@@ -7,6 +7,7 @@
PORTNAME= emerald
PORTVERSION= 0.5.2
+PORTREVISION= 1
CATEGORIES= x11-wm
MASTER_SITES= http://releases.compiz-fusion.org/${PORTVERSION}/
diff --git a/x11-wm/emerald/files/patch-src_main.c b/x11-wm/emerald/files/patch-src_main.c
new file mode 100644
index 000000000000..d8b6e5160b58
--- /dev/null
+++ b/x11-wm/emerald/files/patch-src_main.c
@@ -0,0 +1,48 @@
+--- src/main.c.orig 2007-08-12 17:00:01.000000000 -0400
++++ src/main.c 2007-10-29 15:27:28.000000000 -0400
+@@ -3477,11 +3477,11 @@
+ WnckWindow *win;
+ decor_t *d;
+
+- win = wnck_screen_get_active_window(screen);
++ win = wnck_screen_get_previously_active_window(screen);
+ if (win)
+ {
+ d = g_object_get_data(G_OBJECT(win), "decor");
+- if (d->pixmap && d->decorated)
++ if (d && d->pixmap && d->decorated)
+ {
+ d->active = wnck_window_is_active(win);
+ d->fs = (d->active ? d->fs->ws->fs_act : d->fs->ws->fs_inact);
+@@ -3493,11 +3493,11 @@
+ }
+ }
+
+- win = wnck_screen_get_previously_active_window(screen);
++ win = wnck_screen_get_active_window(screen);
+ if (win)
+ {
+ d = g_object_get_data(G_OBJECT(win), "decor");
+- if (d->pixmap && d->decorated)
++ if (d && d->pixmap && d->decorated)
+ {
+ d->active = wnck_window_is_active(win);
+ d->fs = (d->active ? d->fs->ws->fs_act : d->fs->ws->fs_inact);
+@@ -3558,6 +3558,8 @@
+ if (!get_window_prop(wnck_window_get_xid(win), select_window_atom, &window))
+ remove_frame_window(win);
+
++ g_object_set_data (G_OBJECT (win), "decor", NULL);
++
+ g_free(d);
+ }
+
+@@ -5567,7 +5569,7 @@
+
+ if (status != DECOR_ACQUIRE_STATUS_SUCCESS)
+ {
+- if (status == DECOR_ACQUIRE_STATUS_OTHER_DM_RUNNING)
++ if (status == DECOR_ACQUIRE_STATUS_FAILED)
+ {
+ fprintf (stderr,
+ "%s: Could not acquire decoration manager "