Gentoo Archives: gentoo-commits

From: "Kacper Kowalik (xarthisius)" <xarthisius@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in x11-misc/redshift/files: 1.6-bonoboiidfix.patch
Date: Wed, 04 May 2011 06:33:17
Message-Id: 20110504063306.939FF20057@flycatcher.gentoo.org
1 xarthisius 11/05/04 06:33:06
2
3 Added: 1.6-bonoboiidfix.patch
4 Log:
5 Apply patch for >gnome-2.30 wrt bug 365481 by Anton Bolshakov <anton.bugs@×××××.com>. Drop old.
6
7 (Portage version: 2.2.0_alpha29/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.1 x11-misc/redshift/files/1.6-bonoboiidfix.patch
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-misc/redshift/files/1.6-bonoboiidfix.patch?rev=1.1&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-misc/redshift/files/1.6-bonoboiidfix.patch?rev=1.1&content-type=text/plain
14
15 Index: 1.6-bonoboiidfix.patch
16 ===================================================================
17 Description: Handle newer versions of gnome-panel gconf schema.
18 In newer versions of gnome-panel (>2.30), the gconf identifier
19 name for bonobo_iid was renamed to applet_iid, this caused
20 redshift to be unable to locate the Clock Applet. This patch
21 attempts to use the legacy behaviour, and on failure to
22 retrieve the value uses the newer identifer.
23 Author: Miloš Komarčević <kmilos@×××××.com>
24 Bug: https://launchpad.net/bugs/706353
25 Bug-Ubuntu: https://launchpad.net/bugs/706353
26 Bug-Fedora: https://bugzilla.redhat.com/661145
27 Bug-Gentoo: https://bugs.gentoo.org/365481
28
29 --- a/src/location-gnome-clock.c
30 +++ b/src/location-gnome-clock.c
31 @@ -104,11 +104,28 @@
32 char *bonobo_iid = gconf_client_get_string(client, key,
33 &error);
34
35 + /* Try both gnome-panel 2.30.x and earlier bonobo_iid key and
36 + newer applet_iid. */
37 if (!error && bonobo_iid != NULL &&
38 !strcmp(bonobo_iid, "OAFIID:GNOME_ClockApplet")) {
39 clock_applet_count += 1;
40 current_city = find_current_city(client, id);
41 }
42 + else {
43 + g_free(key);
44 + key = g_strdup_printf("/apps/panel/applets/%s"
45 + "/applet_iid", id);
46 + char *applet_iid = gconf_client_get_string(client, key,
47 + &error);
48 +
49 + if (!error && applet_iid != NULL &&
50 + !strcmp(applet_iid, "ClockAppletFactory::ClockApplet")) {
51 + clock_applet_count += 1;
52 + current_city = find_current_city(client, id);
53 + }
54 +
55 + g_free(applet_iid);
56 + }
57
58 g_free(bonobo_iid);
59 g_free(key);