Gentoo Archives: gentoo-commits

From: Pacho Ramos <pacho@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/vino/files/, net-misc/vino/
Date: Sat, 24 Oct 2015 07:45:54
Message-Id: 1445672730.6c693e0a73b17ba7b4d4ab202e66f96181ffc366.pacho@gentoo
1 commit: 6c693e0a73b17ba7b4d4ab202e66f96181ffc366
2 Author: Pacho Ramos <pacho <AT> gentoo <DOT> org>
3 AuthorDate: Sat Oct 24 07:44:31 2015 +0000
4 Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org>
5 CommitDate: Sat Oct 24 07:45:30 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c693e0a
7
8 net-misc/vino: Apply upstream fixes, also including a fix for a crash when gnome-control-center is not present (#561786 by Mikhail Kurinnoi)
9
10 Package-Manager: portage-2.2.23
11
12 net-misc/vino/files/vino-3.16.0-fix-crash.patch | 53 +++++++++++++++
13 .../vino/files/vino-3.16.0-name-resolution.patch | 47 +++++++++++++
14 net-misc/vino/vino-3.16.0-r1.ebuild | 77 ++++++++++++++++++++++
15 3 files changed, 177 insertions(+)
16
17 diff --git a/net-misc/vino/files/vino-3.16.0-fix-crash.patch b/net-misc/vino/files/vino-3.16.0-fix-crash.patch
18 new file mode 100644
19 index 0000000..bf0d190
20 --- /dev/null
21 +++ b/net-misc/vino/files/vino-3.16.0-fix-crash.patch
22 @@ -0,0 +1,53 @@
23 +From 22f6575b32675ae38567efd3ed8e2362bbc9240d Mon Sep 17 00:00:00 2001
24 +From: David King <amigadave@×××××××××.com>
25 +Date: Mon, 19 Oct 2015 14:48:44 +0100
26 +Subject: Avoid a crash when showing the preferences
27 +
28 +Show an error message when the preferences desktop file is not found,
29 +such as if gnome-control-center is not installed.
30 +
31 +https://bugzilla.gnome.org/show_bug.cgi?id=756654
32 +---
33 + server/vino-status-icon.c | 5 +++++
34 + server/vino-status-tube-icon.c | 9 ++++++++-
35 + 2 files changed, 13 insertions(+), 1 deletion(-)
36 +
37 +diff --git a/server/vino-status-icon.c b/server/vino-status-icon.c
38 +index 53eec02..aaab0af 100644
39 +--- a/server/vino-status-icon.c
40 ++++ b/server/vino-status-icon.c
41 +@@ -202,6 +202,11 @@ vino_status_icon_preferences (VinoStatusIcon *icon)
42 + info = g_desktop_app_info_new ("gnome-sharing-panel.desktop");
43 + if (info == NULL)
44 + info = g_desktop_app_info_new ("vino-preferences.desktop");
45 ++ if (info == NULL)
46 ++ {
47 ++ vino_util_show_error (NULL, _("Error displaying preferences"), NULL);
48 ++ return;
49 ++ }
50 + context = gdk_display_get_app_launch_context (gdk_screen_get_display (screen));
51 + if (!g_app_info_launch (G_APP_INFO (info), NULL, G_APP_LAUNCH_CONTEXT (context), &error))
52 + {
53 +diff --git a/server/vino-status-tube-icon.c b/server/vino-status-tube-icon.c
54 +index 0a23a23..e5cbb11 100644
55 +--- a/server/vino-status-tube-icon.c
56 ++++ b/server/vino-status-tube-icon.c
57 +@@ -165,7 +165,14 @@ vino_status_tube_icon_preferences (VinoStatusTubeIcon *icon)
58 + GError *error = NULL;
59 +
60 + screen = gtk_status_icon_get_screen (GTK_STATUS_ICON (icon));
61 +- info = g_desktop_app_info_new ("vino-preferences.desktop");
62 ++ info = g_desktop_app_info_new ("gnome-sharing-panel.desktop");
63 ++ if (info == NULL)
64 ++ info = g_desktop_app_info_new ("vino-preferences.desktop");
65 ++ if (info == NULL)
66 ++ {
67 ++ vino_util_show_error (NULL, _("Error displaying preferences"), NULL);
68 ++ return;
69 ++ }
70 + context = gdk_display_get_app_launch_context (gdk_screen_get_display (screen));
71 + if (!g_app_info_launch (G_APP_INFO (info), NULL, G_APP_LAUNCH_CONTEXT (context), &error))
72 + {
73 +--
74 +cgit v0.11.2
75 +
76
77 diff --git a/net-misc/vino/files/vino-3.16.0-name-resolution.patch b/net-misc/vino/files/vino-3.16.0-name-resolution.patch
78 new file mode 100644
79 index 0000000..2989ffa
80 --- /dev/null
81 +++ b/net-misc/vino/files/vino-3.16.0-name-resolution.patch
82 @@ -0,0 +1,47 @@
83 +From bdd14508f9ea46372fcef93e17a9c14bcb8b4c83 Mon Sep 17 00:00:00 2001
84 +From: Dimitri Tarassenko <dtarassenko@×××××.com>
85 +Date: Fri, 28 Aug 2015 17:02:15 +0100
86 +Subject: Improve handling of name resolution failure
87 +
88 +Ensure that the host string for a client is always filled with a valid
89 +string, by calling getnameinfo() a second time (ensuring a numeric host
90 +is returned) if the first call fails.
91 +
92 +https://bugzilla.gnome.org/show_bug.cgi?id=754194
93 +---
94 + server/libvncserver/rfbserver.c | 12 ++++++------
95 + 1 file changed, 6 insertions(+), 6 deletions(-)
96 +
97 +diff --git a/server/libvncserver/rfbserver.c b/server/libvncserver/rfbserver.c
98 +index 1295219..0a60fb2 100644
99 +--- a/server/libvncserver/rfbserver.c
100 ++++ b/server/libvncserver/rfbserver.c
101 +@@ -150,7 +150,7 @@ rfbNewClient(rfbScreenInfoPtr rfbScreen,
102 + struct sockaddr_storage addr;
103 + socklen_t addrlen = sizeof(addr);
104 + int i;
105 +- char host[NI_MAXHOST];
106 ++ char host[NI_MAXHOST] = "(unresolved)";
107 + const char *prt = "unknown";
108 +
109 + cl = (rfbClientPtr)calloc(sizeof(rfbClientRec),1);
110 +@@ -166,11 +166,11 @@ rfbNewClient(rfbScreenInfoPtr rfbScreen,
111 +
112 + getpeername(sock, (struct sockaddr *)&addr, &addrlen);
113 +
114 +- getnameinfo((struct sockaddr *)&addr,
115 +- addrlen,
116 +- host, sizeof(host),
117 +- NULL, 0,
118 +- 0);
119 ++ if (getnameinfo((struct sockaddr *)&addr, addrlen,
120 ++ host, sizeof(host), NULL, 0, 0)) {
121 ++ getnameinfo((struct sockaddr *)&addr, addrlen,
122 ++ host, sizeof(host), NULL, 0, NI_NUMERICHOST);
123 ++ }
124 +
125 + cl->host = strdup(host);
126 +
127 +--
128 +cgit v0.11.2
129 +
130
131 diff --git a/net-misc/vino/vino-3.16.0-r1.ebuild b/net-misc/vino/vino-3.16.0-r1.ebuild
132 new file mode 100644
133 index 0000000..0b338c3
134 --- /dev/null
135 +++ b/net-misc/vino/vino-3.16.0-r1.ebuild
136 @@ -0,0 +1,77 @@
137 +# Copyright 1999-2015 Gentoo Foundation
138 +# Distributed under the terms of the GNU General Public License v2
139 +# $Id$
140 +
141 +EAPI="5"
142 +GCONF_DEBUG="yes"
143 +
144 +inherit eutils gnome2
145 +
146 +DESCRIPTION="An integrated VNC server for GNOME"
147 +HOMEPAGE="https://wiki.gnome.org/Projects/Vino"
148 +
149 +LICENSE="GPL-2+"
150 +SLOT="0"
151 +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
152 +IUSE="crypt gnome-keyring ipv6 jpeg ssl +telepathy zeroconf +zlib"
153 +# bug #394611; tight encoding requires zlib encoding
154 +REQUIRED_USE="jpeg? ( zlib )"
155 +
156 +# cairo used in vino-fb
157 +# libSM and libICE used in eggsmclient-xsmp
158 +RDEPEND="
159 + >=dev-libs/glib-2.26:2
160 + >=dev-libs/libgcrypt-1.1.90:0=
161 + >=x11-libs/gtk+-3:3
162 +
163 + dev-libs/dbus-glib
164 + x11-libs/cairo:=
165 + x11-libs/libICE
166 + x11-libs/libSM
167 + x11-libs/libX11
168 + x11-libs/libXdamage
169 + x11-libs/libXext
170 + x11-libs/libXfixes
171 + x11-libs/libXtst
172 + x11-libs/pango[X]
173 +
174 + >=x11-libs/libnotify-0.7.0:=
175 +
176 + crypt? ( >=dev-libs/libgcrypt-1.1.90:0= )
177 + gnome-keyring? ( app-crypt/libsecret )
178 + jpeg? ( virtual/jpeg:0= )
179 + ssl? ( >=net-libs/gnutls-2.2.0:= )
180 + telepathy? ( >=net-libs/telepathy-glib-0.18 )
181 + zeroconf? ( >=net-dns/avahi-0.6:=[dbus] )
182 + zlib? ( sys-libs/zlib:= )
183 +"
184 +DEPEND="${RDEPEND}
185 + >=dev-lang/perl-5
186 + >=dev-util/intltool-0.50
187 + virtual/pkgconfig
188 + app-crypt/libsecret
189 +"
190 +# libsecret is always required at build time per bug 322763
191 +
192 +src_prepare() {
193 + # Improve handling of name resolution failure (from 'master')
194 + epatch "${FILESDIR}"/${P}-name-resolution.patch
195 +
196 + # Avoid a crash when showing the preferences (from 'master')
197 + epatch "${FILESDIR}"/${P}-fix-crash.patch
198 +
199 + gnome2_src_prepare
200 +}
201 +
202 +src_configure() {
203 + gnome2_src_configure \
204 + --with-gcrypt \
205 + $(use_enable ipv6) \
206 + $(use_with crypt gcrypt) \
207 + $(use_with gnome-keyring secret) \
208 + $(use_with jpeg) \
209 + $(use_with ssl gnutls) \
210 + $(use_with telepathy) \
211 + $(use_with zeroconf avahi) \
212 + $(use_with zlib)
213 +}