[arch-commits] Commit in hal/trunk (6 files)

Jan de Groot jgc at archlinux.org
Sun Mar 7 08:42:44 EST 2010


    Date: Sunday, March 7, 2010 @ 08:42:44
  Author: jgc
Revision: 71483

upgpkg: hal 0.5.14-2
Add upstream patches from git. Disable gtk-doc regeneration. Closes: FS#17720, FS#16158, FS#17719.

Added:
  hal/trunk/dbus-error-init.patch
  hal/trunk/handle-input-touchpad.patch
  hal/trunk/macbook-fix-ioperm.patch
  hal/trunk/path-max.patch
Modified:
  hal/trunk/PKGBUILD
  hal/trunk/hal.install

-----------------------------+
 PKGBUILD                    |   39 ++++---
 dbus-error-init.patch       |  231 ++++++++++++++++++++++++++++++++++++++++++
 hal.install                 |   10 +
 handle-input-touchpad.patch |  101 ++++++++++++++++++
 macbook-fix-ioperm.patch    |   41 +++++++
 path-max.patch              |   31 +++++
 6 files changed, 437 insertions(+), 16 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2010-03-07 13:12:49 UTC (rev 71482)
+++ PKGBUILD	2010-03-07 13:42:44 UTC (rev 71483)
@@ -4,7 +4,7 @@
 
 pkgname=hal
 pkgver=0.5.14
-pkgrel=1
+pkgrel=2
 pkgdesc="Hardware Abstraction Layer"
 arch=(i686 x86_64)
 license=('GPL' 'custom')
@@ -22,7 +22,25 @@
         hal-HDAPS-blacklist.patch
         hal-xen-unignore-axes.patch
         hal-use-at-console.patch
-        fix-libusb-detection.patch)
+        fix-libusb-detection.patch
+        dbus-error-init.patch
+        path-max.patch
+        handle-input-touchpad.patch
+        macbook-fix-ioperm.patch)
+md5sums=('e9163df591a6f38f59fdbfe33e73bf20'
+         '277e96ac130d7bfce0b30f0b80db8782'
+         'c688a3c6574699365926f4fef7441545'
+         '4d4b6801a1cedca22b8bdd9db73b16fb'
+         '6d87c3e63184ae3a69caafc846f538a3'
+         '6507e5091ee2d11a87ae738a8e2caecb'
+         '1171c2d83b76059f2da7a3538e08fa4e'
+         '52bd305299aa22ae07f1a862c22d30fa'
+         '3f11234fb5e5044fbfc5199ec65b182c'
+         'da088f12cfc2d190bbf95b747e19ab9e'
+         '634f4ec2203eff7de8fa2ed2c6b9cbe0'
+         'f8c9b3a40d03907b498feef571d42466'
+         '0575677614db0632b17b1a719798c7e0'
+         '46a5db3ff896ee37762aa8d7e70942c4')
 
 build() {
   cd "${srcdir}/${pkgname}-${pkgver}"
@@ -34,6 +52,10 @@
   patch -Np1 -i "${srcdir}/hal-xen-unignore-axes.patch" || return 1
   patch -Np1 -i "${srcdir}/hal-use-at-console.patch" || return 1
   patch -Np1 -i "${srcdir}/fix-libusb-detection.patch" || return 1
+  patch -Np1 -i "${srcdir}/dbus-error-init.patch" || return 1
+  patch -Np1 -i "${srcdir}/path-max.patch" || return 1
+  patch -Np1 -i "${srcdir}/handle-input-touchpad.patch" || return 1
+  patch -Np1 -i "${srcdir}/macbook-fix-ioperm.patch" || return 1
   
   libtoolize --force || return 1
   aclocal || return 1
@@ -47,7 +69,8 @@
       --disable-policy-kit --disable-acl-management \
       --enable-umount-helper --disable-smbios \
       --with-hal-user=hal --with-hal-group=hal \
-      --with-pid-file=/var/run/hald.pid || return 1
+      --with-pid-file=/var/run/hald.pid \
+      --disable-gtk-doc || return 1
   make || return 1
   make DESTDIR="${pkgdir}" install || return 1
   install -m755 -d "${pkgdir}/etc/rc.d"
@@ -57,13 +80,3 @@
   install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
   install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
 }
-md5sums=('e9163df591a6f38f59fdbfe33e73bf20'
-         '277e96ac130d7bfce0b30f0b80db8782'
-         'c688a3c6574699365926f4fef7441545'
-         '4d4b6801a1cedca22b8bdd9db73b16fb'
-         '6d87c3e63184ae3a69caafc846f538a3'
-         '6507e5091ee2d11a87ae738a8e2caecb'
-         '1171c2d83b76059f2da7a3538e08fa4e'
-         '52bd305299aa22ae07f1a862c22d30fa'
-         '3f11234fb5e5044fbfc5199ec65b182c'
-         'da088f12cfc2d190bbf95b747e19ab9e')

Added: dbus-error-init.patch
===================================================================
--- dbus-error-init.patch	                        (rev 0)
+++ dbus-error-init.patch	2010-03-07 13:42:44 UTC (rev 71483)
@@ -0,0 +1,231 @@
+From dcb2829b8eff61463b0869614ddb07b1c86cecaa Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <sebastian at breakpoint.cc>
+Date: Wed, 30 Dec 2009 11:42:52 +0000
+Subject: linux/probe-input: don't use error prio init
+
+it may happen in the out: case that LIBHAL_FREE_DBUS_ERROR (&error) is
+called before the error structure is initialized via
+dbus_error_init (&error). This could lead to a segfault during startup
+as seen in dmesg:
+
+|Intel AES-NI instructions are not detected.
+|padlock: VIA PadLock not detected.
+|hald-probe-inpu[1793]: segfault at 2 ip 00007f656fb68969 sp 00007fff39eeb950 error 4 in libc-2.10.2.so[7f656faf3000+14a000]
+|hald-probe-inpu[1796]: segfault at 2 ip 00007fa2c3293969 sp 00007fffd92a5dd0 error 4 in libc-2.10.2.so[7fa2c321e000+14a000]
+|hald-probe-inpu[1797]: segfault at 2 ip 00007f1d08ba2969 sp 00007fff34244e30 error 4 in libc-2.10.2.so[7f1d08b2d000+14a000]
+|hald-probe-inpu[1799]: segfault at 2 ip 00007f35c0e3d969 sp 00007fffe5ec7ee0 error 4 in libc-2.10.2.so[7f35c0dc8000+14a000]
+|hald-probe-inpu[1800]: segfault at 2 ip 00007f931c556969 sp 00007fffe1825b60 error 4 in libc-2.10.2.so[7f931c4e1000+14a000]
+|hald-probe-inpu[1801]: segfault at 2 ip 00007f5156d9a969 sp 00007fff4e620af0 error 4 in libc-2.10.2.so[7f5156d25000+14a000]
+|RPC: Registered udp transport module.
+|RPC: Registered tcp transport module.
+
+What I run into seems to be reported as Debian #562068 [0]. This patch
+makes the segfault go away on my machine.
+
+[0] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=562068
+
+Signed-off-by: Sebastian Andrzej Siewior <sebastian at breakpoint.cc>
+Signed-off-by: Martin Pitt <martin.pitt at ubuntu.com>
+---
+diff --git a/hald/linux/probing/probe-input.c b/hald/linux/probing/probe-input.c
+index 94e9929..cad47d3 100644
+--- a/hald/linux/probing/probe-input.c
++++ b/hald/linux/probing/probe-input.c
+@@ -70,6 +70,7 @@ main (int argc, char *argv[])
+ 	fd = -1;
+ 
+ 	setup_logger ();
++	dbus_error_init (&error);
+ 
+ 	button_type = getenv ("HAL_PROP_BUTTON_TYPE");
+ 	if (button_type == NULL)
+@@ -96,7 +97,6 @@ main (int argc, char *argv[])
+ 	if (udi == NULL)
+ 		goto out;
+ 
+-	dbus_error_init (&error);
+ 	if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
+ 		goto out;
+ 
+--
+cgit v0.8.3-6-g21f6
+From baa61a879985d63f549854518ef14efd40e62e8c Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones at redhat.com>
+Date: Wed, 24 Feb 2010 16:19:28 +0000
+Subject: Make sure dbus_error_init() is called before LIBHAL_FREE_DBUS_ERROR()
+
+If dbus_error_init() is not called before LIBHAL_FREE_DBUS_ERROR() is
+called on that error, then it is uninitialized and may segfault.  This
+means that dbus_error_init() must be called before any "goto out" if
+"out:" calls LIBHAL_FREE_DBUS_ERROR().
+
+Signed-off-by: Martin Pitt <martin.pitt at ubuntu.com>
+---
+diff --git a/hald/linux/probing/probe-hiddev.c b/hald/linux/probing/probe-hiddev.c
+index 45d2084..bffc040 100644
+--- a/hald/linux/probing/probe-hiddev.c
++++ b/hald/linux/probing/probe-hiddev.c
+@@ -57,11 +57,12 @@ main (int argc, char *argv[])
+ 	/* assume failure */
+ 	ret = 1;
+ 
++	dbus_error_init (&error);
++
+ 	udi = getenv ("UDI");
+ 	if (udi == NULL)
+ 		goto out;
+ 
+-	dbus_error_init (&error);
+ 	if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
+ 		goto out;
+ 
+diff --git a/hald/linux/probing/probe-ieee1394-unit.c b/hald/linux/probing/probe-ieee1394-unit.c
+index 70b0f86..aaa92e2 100644
+--- a/hald/linux/probing/probe-ieee1394-unit.c
++++ b/hald/linux/probing/probe-ieee1394-unit.c
+@@ -388,6 +388,8 @@ int main (int argc, char *argv[])
+ 
+ 	setup_logger ();
+ 
++	dbus_error_init (&error);
++
+ 	udi = getenv ("UDI");
+ 	if (udi == NULL)
+ 		goto out;
+@@ -396,7 +398,6 @@ int main (int argc, char *argv[])
+ 	if (ieee1394_udi == NULL)
+ 		goto out;
+ 
+-	dbus_error_init (&error);
+ 	if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
+ 		goto out;
+ 
+diff --git a/hald/linux/probing/probe-net-bluetooth.c b/hald/linux/probing/probe-net-bluetooth.c
+index 0b1b912..e911eea 100644
+--- a/hald/linux/probing/probe-net-bluetooth.c
++++ b/hald/linux/probing/probe-net-bluetooth.c
+@@ -141,6 +141,8 @@ main (int argc, char *argv[])
+ 	DBusMessage *reply = NULL;
+ 	DBusError error;
+ 
++	dbus_error_init (&error);
++
+ 	udi = getenv ("UDI");
+ 	if (udi == NULL)
+ 		goto out;
+@@ -151,8 +153,6 @@ main (int argc, char *argv[])
+ 
+ 	HAL_INFO (("Investigating '%s'", iface));
+ 
+-	dbus_error_init (&error);
+-
+ 	if ((conn = dbus_bus_get (DBUS_BUS_SYSTEM, &error)) == NULL)
+ 		goto out;
+ 
+diff --git a/hald/linux/probing/probe-printer.c b/hald/linux/probing/probe-printer.c
+index 91ed7bc..7c6d1c6 100644
+--- a/hald/linux/probing/probe-printer.c
++++ b/hald/linux/probing/probe-printer.c
+@@ -66,6 +66,8 @@ main (int argc, char *argv[])
+ 	ret = 1;
+ 
+ 	setup_logger ();
++
++	dbus_error_init (&error);
+ 	
+ 	udi = getenv ("UDI");
+ 	if (udi == NULL) {
+@@ -73,7 +75,6 @@ main (int argc, char *argv[])
+ 		goto out;
+ 	}
+ 
+-	dbus_error_init (&error);
+ 	if ((ctx = libhal_ctx_init_direct (&error)) == NULL) {
+ 		HAL_ERROR (("ctx init failed"));
+ 		goto out;
+diff --git a/hald/linux/probing/probe-smbios.c b/hald/linux/probing/probe-smbios.c
+index 0bc9689..15c0d4f 100644
+--- a/hald/linux/probing/probe-smbios.c
++++ b/hald/linux/probing/probe-smbios.c
+@@ -129,6 +129,8 @@ main (int argc, char *argv[])
+ 	ret = 1;
+ 
+ 	setup_logger ();
++
++	dbus_error_init (&error);
+ 	
+ 	udi = getenv ("UDI");
+ 	if (udi == NULL) {
+@@ -136,7 +138,6 @@ main (int argc, char *argv[])
+ 		goto out;
+ 	}
+ 
+-	dbus_error_init (&error);
+ 	if ((ctx = libhal_ctx_init_direct (&error)) == NULL) {
+ 		HAL_ERROR (("ctx init failed"));
+ 		goto out;
+diff --git a/hald/linux/probing/probe-storage.c b/hald/linux/probing/probe-storage.c
+index 824a82e..dd524ca 100644
+--- a/hald/linux/probing/probe-storage.c
++++ b/hald/linux/probing/probe-storage.c
+@@ -109,6 +109,8 @@ main (int argc, char *argv[])
+ 	/* assume failure */
+ 	ret = 1;
+ 
++	dbus_error_init (&error);
++
+ 	if ((udi = getenv ("UDI")) == NULL)
+ 		goto out;
+ 	if ((device_file = getenv ("HAL_PROP_BLOCK_DEVICE")) == NULL)
+@@ -127,7 +129,6 @@ main (int argc, char *argv[])
+ 	else
+ 		only_check_for_fs = FALSE;
+ 
+-	dbus_error_init (&error);
+ 	if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
+ 		goto out;
+ 
+diff --git a/hald/linux/probing/probe-video4linux.c b/hald/linux/probing/probe-video4linux.c
+index cf913c0..7bc13e8 100644
+--- a/hald/linux/probing/probe-video4linux.c
++++ b/hald/linux/probing/probe-video4linux.c
+@@ -58,6 +58,8 @@ main (int argc, char *argv[])
+ 
+ 	setup_logger ();
+ 
++	dbus_error_init (&error);
++
+ 	device_file = getenv ("HAL_PROP_VIDEO4LINUX_DEVICE");
+ 	if (device_file == NULL)
+ 		goto out;
+@@ -66,7 +68,6 @@ main (int argc, char *argv[])
+ 	if (udi == NULL)
+ 		goto out;
+ 
+-	dbus_error_init (&error);
+ 	ctx = libhal_ctx_init_direct (&error);
+ 	if (ctx == NULL)
+ 		goto out;
+diff --git a/hald/linux/probing/probe-volume.c b/hald/linux/probing/probe-volume.c
+index 0de1b91..7268fff 100644
+--- a/hald/linux/probing/probe-volume.c
++++ b/hald/linux/probing/probe-volume.c
+@@ -318,6 +318,8 @@ main (int argc, char *argv[])
+ 	/* assume failure */
+ 	ret = 1;
+ 
++	dbus_error_init (&error);
++
+ 	if ((udi = getenv ("UDI")) == NULL)
+ 		goto out;
+ 	if ((device_file = getenv ("HAL_PROP_BLOCK_DEVICE")) == NULL)
+@@ -346,7 +348,6 @@ main (int argc, char *argv[])
+ 
+ 	fsusage = getenv ("HAL_PROP_VOLUME_FSUSAGE");
+ 
+-	dbus_error_init (&error);
+ 	if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
+ 		goto out;
+ 
+--
+cgit v0.8.3-6-g21f6

Modified: hal.install
===================================================================
--- hal.install	2010-03-07 13:12:49 UTC (rev 71482)
+++ hal.install	2010-03-07 13:42:44 UTC (rev 71483)
@@ -14,7 +14,11 @@
 }
 
 # arg 1:  the old package version
-pre_remove() {
-  usr/sbin/userdel hal &>/dev/null
-  usr/sbin/groupdel hal &>/dev/null
+post_remove() {
+  if getent passwd hal &>/dev/null; then
+    usr/sbin/userdel hal
+  fi
+  if getent group hal &>/dev/null; then
+    usr/sbin/groupdel hal
+  fi
 }

Added: handle-input-touchpad.patch
===================================================================
--- handle-input-touchpad.patch	                        (rev 0)
+++ handle-input-touchpad.patch	2010-03-07 13:42:44 UTC (rev 71483)
@@ -0,0 +1,101 @@
+From 6dccf8e3ad181e8f56b1d2a994ec50a1953a1c2d Mon Sep 17 00:00:00 2001
+From: Michael Witten <mfwitten at gmail.com>
+Date: Wed, 06 Jan 2010 00:53:17 +0000
+Subject: Policy: handle `input.touchpad' explicitly
+
+This commit essentially duplicates the policy for:
+
+   <match key="info.capabilities" contains="input.mouse">
+
+and then changes `input.mouse' to `input.touchpad'. This
+is necessary because in Linus Torvalds's Linux repo:
+
+    git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
+
+the following commit:
+
+    commit 7105d2ea73e1391b681d0e1212c42f561c64d429
+    Author: Dmitry Torokhov <dmitry.torokhov at gmail.com>
+    Date:   Fri Dec 11 23:54:54 2009 -0800
+
+        Input: ALPS - do not set REL_X/REL_Y capabilities on the touchpad
+
+        Relative events are only reported via secondary device therefore device
+        associated with the touchpad should not advertise these capabilities.
+
+        Signed-off-by: Dmitry Torokhov <dtor at mail.ru>
+
+made these few changes:
+
+    diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
+    index a3f492a..b03e7e0 100644
+    /--- a/drivers/input/mouse/alps.c
+    /+++ b/drivers/input/mouse/alps.c
+    /@@ -487,6 +487,17 @@ int alps_init(struct psmouse *psmouse)
+     	if (alps_hw_init(psmouse))
+     		goto init_fail;
+
+    +	/*
+    +	 * Undo part of setup done for us by psmouse core since touchpad
+    +	 * is not a relative device.
+    +	 */
+    +	__clear_bit(EV_REL, dev1->evbit);
+    +	__clear_bit(REL_X, dev1->relbit);
+    +	__clear_bit(REL_Y, dev1->relbit);
+    +
+    +	/*
+    +	 * Now set up our capabilities.
+    +	 */
+     	dev1->evbit[BIT_WORD(EV_KEY)] |= BIT_MASK(EV_KEY);
+     	dev1->keybit[BIT_WORD(BTN_TOUCH)] |= BIT_MASK(BTN_TOUCH);
+     	dev1->keybit[BIT_WORD(BTN_TOOL_FINGER)] |= BIT_MASK(BTN_TOOL_FINGER);
+
+so that HAL no longer adds:
+
+    input.mouse
+
+to an ALPS touchpad's:
+
+    info.capabilities
+
+so that HAL no longer marks the ALPS touchpad with:
+
+    input.x11_driver = 'evdev'
+
+because the policy file:
+
+    fdi/policy/10osvendor/10-x11-input.fdi
+
+doesn't define the policy for:
+
+    <match key="info.capabilities" contains="input.touchpad">
+
+which was previous unnecessary because everything used to
+be caught by the policy for:
+
+    <match key="info.capabilities" contains="input.mouse">
+
+Signed-off-by: Michael Witten <mfwitten at gmail.com>
+Signed-off-by: Martin Pitt <martin.pitt at ubuntu.com>
+---
+diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
+index cff8fc5..8bbe263 100644
+--- a/fdi/policy/10osvendor/10-x11-input.fdi
++++ b/fdi/policy/10osvendor/10-x11-input.fdi
+@@ -16,6 +16,14 @@
+       </match>
+     </match>
+ 
++    <match key="info.capabilities" contains="input.touchpad">
++      <merge key="input.x11_driver" type="string">mouse</merge>
++      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
++             string="Linux">
++        <merge key="input.x11_driver" type="string">evdev</merge>
++      </match>
++    </match>
++
+     <match key="info.capabilities" contains="input.tablet">
+       <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
+              string="Linux">
+--
+cgit v0.8.3-6-g21f6

Added: macbook-fix-ioperm.patch
===================================================================
--- macbook-fix-ioperm.patch	                        (rev 0)
+++ macbook-fix-ioperm.patch	2010-03-07 13:42:44 UTC (rev 71483)
@@ -0,0 +1,41 @@
+From 597c1ffffd61a15a334ce42f2a569c59f0270bcb Mon Sep 17 00:00:00 2001
+From: Dmitry Torokhov <dmitry.torokhov at gmail.com>
+Date: Thu, 25 Feb 2010 10:25:18 +0000
+Subject: Fix incorrect arguments to ioperm() call
+
+The second argument of ioperm() is not the last port to be accessed
+but rather length of the port range [port, port + len).
+
+Signed-off-by: Dmitry Torokhov <dtor at mail.ru>
+Signed-off-by: Martin Pitt <martin.pitt at ubuntu.com>
+---
+diff --git a/hald/linux/addons/addon-imac-backlight.c b/hald/linux/addons/addon-imac-backlight.c
+index e869192..54e4ea3 100644
+--- a/hald/linux/addons/addon-imac-backlight.c
++++ b/hald/linux/addons/addon-imac-backlight.c
+@@ -158,7 +158,8 @@ main (int argc, char **argv)
+ 		goto out;
+ 	}
+ 
+-	if (ioperm(0xB2, 0xB3, 1) < 0)
++	/* Allow access to ports 0xB2 and 0xB3 */
++	if (ioperm(0xB2, 2, 1) < 0)
+ 	{
+ 		HAL_ERROR (("ioperm failed (you should be root)."));
+ 		exit(1);
+diff --git a/hald/linux/addons/addon-macbookpro-backlight.c b/hald/linux/addons/addon-macbookpro-backlight.c
+index 2a6fef6..c1bbbac 100644
+--- a/hald/linux/addons/addon-macbookpro-backlight.c
++++ b/hald/linux/addons/addon-macbookpro-backlight.c
+@@ -507,7 +507,8 @@ main (int argc, char *argv[])
+  	state = INREG(0x7ae4);
+  	OUTREG(0x7ae4, state);
+ 
+-	if (ioperm (0x300, 0x304, 1) < 0) {
++	/* Allow access to porta 0x300 through 0x304 */
++	if (ioperm (0x300, 5, 1) < 0) {
+ 		HAL_ERROR (("ioperm failed (you should be root)."));
+ 		exit(1);
+ 	}
+--
+cgit v0.8.3-6-g21f6

Added: path-max.patch
===================================================================
--- path-max.patch	                        (rev 0)
+++ path-max.patch	2010-03-07 13:42:44 UTC (rev 71483)
@@ -0,0 +1,31 @@
+From a2c3dd5a04d79265772c09c4280606d5c2ed72c6 Mon Sep 17 00:00:00 2001
+From: Martin Pitt <martin.pitt at ubuntu.com>
+Date: Mon, 04 Jan 2010 15:56:13 +0000
+Subject: Bump HAL_PATH_MAX to 4096
+
+Some bits in the code use realpath() with destination paths of size
+HAL_PATH_MAX. This potentially breaks on systems where PATH_MAX is bigger than
+HAL_PATH_MAX (which was 512 until now).
+
+Since we can't use PATH_MAX directly (due to platforms like GNU/Hurd, which
+apparently don't have it), just bump HAL_PATH_MAX to 4096 (as PATH_MAX is on
+Linux), to avoid potential buffer overflows and also fix hal on Linux when
+enabling FORTIFY in gcc.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=25888
+---
+diff --git a/hald/util.h b/hald/util.h
+index c2a1584..7883333 100644
+--- a/hald/util.h
++++ b/hald/util.h
+@@ -38,7 +38,7 @@
+ #endif
+ 
+ #define HAL_NAME_MAX 256
+-#define HAL_PATH_MAX 512
++#define HAL_PATH_MAX 4096
+ 
+ gboolean hal_util_remove_trailing_slash (gchar *path);
+ 
+--
+cgit v0.8.3-6-g21f6



More information about the arch-commits mailing list