[Pkg-utopia-commits] r1458 - in /packages/unstable/hal/debian: changelog patches/16_ntfs_allowed_mount_options.patch patches/62_dbus-python-0.80.patch patches/65-keyboard-addon-repeated.patch patches/66-NULL-fstype-crash.patch patches/67-fix-probe-volume.patch

biebl at users.alioth.debian.org biebl at users.alioth.debian.org
Wed May 2 09:40:39 UTC 2007


Author: biebl
Date: Wed May  2 09:40:38 2007
New Revision: 1458

URL: http://svn.debian.org/wsvn/pkg-utopia/?sc=1&rev=1458
Log:
Merge the first round of patches kindly provided by pitti.

Added:
    packages/unstable/hal/debian/patches/16_ntfs_allowed_mount_options.patch
    packages/unstable/hal/debian/patches/62_dbus-python-0.80.patch
    packages/unstable/hal/debian/patches/65-keyboard-addon-repeated.patch
    packages/unstable/hal/debian/patches/66-NULL-fstype-crash.patch
    packages/unstable/hal/debian/patches/67-fix-probe-volume.patch
Modified:
    packages/unstable/hal/debian/changelog

Modified: packages/unstable/hal/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-utopia/packages/unstable/hal/debian/changelog?rev=1458&op=diff
==============================================================================
--- packages/unstable/hal/debian/changelog (original)
+++ packages/unstable/hal/debian/changelog Wed May  2 09:40:38 2007
@@ -1,3 +1,23 @@
+hal (0.5.9-2) unstable; urgency=low
+
+  * Upload to unstable.
+
+  * Changes merged from Ubuntu:
+    - debian/patches/16_ntfs_allowed_mount_options.patch
+      + Allow NTFS mount option 'utf8' (LP #78142).
+    - debian/patches/62_dbus-python-0.80.patch
+      + Correctly show HAL properties in hal-device-manager with dbus-python.
+        (FD #9343; rejected upstream because h-d-m is going away).
+    - debian/patches/65-keyboard-addon-repeated.patch
+      + Do not ignore key repeat events in the keyboard addon. (FD #9767)
+    - debian/patches/66-NULL-fstype-crash.patch
+      + Do not crash on NULL volume.fstypes, and assing some fallback values
+        to them. (FD #10429, LP #87800)
+    - debian/patches/67-fix-probe-volume.patch
+      + Fix scrambled labels. (FD #10362, LP #69914)
+
+ -- Michael Biebl <biebl at debian.org>  Wed, 02 May 2007 11:29:26 +0200
+
 hal (0.5.9-1) experimental; urgency=low
 
   * New upstream release.

Added: packages/unstable/hal/debian/patches/16_ntfs_allowed_mount_options.patch
URL: http://svn.debian.org/wsvn/pkg-utopia/packages/unstable/hal/debian/patches/16_ntfs_allowed_mount_options.patch?rev=1458&op=file
==============================================================================
--- packages/unstable/hal/debian/patches/16_ntfs_allowed_mount_options.patch (added)
+++ packages/unstable/hal/debian/patches/16_ntfs_allowed_mount_options.patch Wed May  2 09:40:38 2007
@@ -1,0 +1,11 @@
+diff -Nur hal-0.5.9/fdi/policy/10osvendor/20-storage-methods.fdi hal-0.5.9.new/fdi/policy/10osvendor/20-storage-methods.fdi
+--- hal-0.5.9/fdi/policy/10osvendor/20-storage-methods.fdi	2007-03-27 07:18:54.000000000 +0200
++++ hal-0.5.9.new/fdi/policy/10osvendor/20-storage-methods.fdi	2007-04-17 20:58:34.000000000 +0200
+@@ -186,6 +186,7 @@
+ 	  <append key="volume.mount.valid_options" type="strlist">gid=</append>
+ 	  <append key="volume.mount.valid_options" type="strlist">umask=</append>
+ 	  <append key="volume.mount.valid_options" type="strlist">locale=</append>
++	  <append key="volume.mount.valid_options" type="strlist">utf8</append>
+ 	</match>
+ 	<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" string="FreeBSD">
+ 	  <append key="volume.mount.valid_options" type="strlist">-u=</append>

Added: packages/unstable/hal/debian/patches/62_dbus-python-0.80.patch
URL: http://svn.debian.org/wsvn/pkg-utopia/packages/unstable/hal/debian/patches/62_dbus-python-0.80.patch?rev=1458&op=file
==============================================================================
--- packages/unstable/hal/debian/patches/62_dbus-python-0.80.patch (added)
+++ packages/unstable/hal/debian/patches/62_dbus-python-0.80.patch Wed May  2 09:40:38 2007
@@ -1,0 +1,52 @@
+--- tools/device-manager/DeviceManager.py.old	2007-03-01 13:51:25.642701954 +0100
++++ tools/device-manager/DeviceManager.py	2007-03-01 13:53:45.690682834 +0100
+@@ -367,7 +367,7 @@
+         # clear category, capabilities
+         # set category, capabilities
+         if device.properties.has_key("info.category"):
+-            category.set_label("%s"%device.properties["info.category"])
++            category.set_label('"' + '", "'.join(device.properties["info.capabilities"]) + '"')
+         else:
+ 	    category.set_label("Unknown")
+ 
+@@ -453,24 +453,30 @@
+             iter = store.append()
+             val = device.properties[p]
+             ptype = type(val)
+-            if ptype==str:
++            if issubclass(ptype, str):
+                 store.set(iter, 0, p, 1, "string", 2, "%s"%val)
+-            elif ptype==int:
+-                store.set(iter, 0, p, 1, "int", 2, "%d (0x%x)"%(val, val))
+-            elif ptype==long:
+-                store.set(iter, 0, p, 1, "long", 2, "%d (0x%x)"%(val, val))
+-            elif ptype==bool:
++            elif issubclass(ptype, unicode):
++                store.set(iter, 0, p, 1, "string", 2, val.encode('utf-8'))
++            elif issubclass(ptype, (bool, dbus.Boolean)):
+                 if val:
+                     store.set(iter, 0, p, 1, "bool", 2, "true")
+                 else:
+                     store.set(iter, 0, p, 1, "bool", 2, "false")
+-            elif ptype==float:
++            elif issubclass(ptype, int):
++                store.set(iter, 0, p, 1, "int", 2, "%d (0x%x)"%(val, val))
++            elif issubclass(ptype, long):
++                store.set(iter, 0, p, 1, "long", 2, "%d (0x%x)"%(val, val))
++            elif issubclass(ptype, float):
+                 store.set(iter, 0, p, 1, "float", 2, "%f"%val)
+ 	    elif ptype==list:
+ 		store.set(iter, 0, p, 1, "list", 2, ", ".join(val))
+-	    else:
+-		# assume strlist
+-		store.set(iter, 0, p, 1, "strlist", 2, val)
++            elif issubclass(ptype, list):
++                # assume strlist
++                formatted = (u'"' + u'", "'.join(val) + u'"').encode('utf-8')
++                store.set(iter, 0, p, 1, "strlist", 2, formatted)
++            else:
++                # should never happen
++                store.set(iter, 0, p, 1, "(unknown type)", 2, "")
+ 
+ 
+         prop_tree_view = self.xml.get_widget("ns_adv_properties")

Added: packages/unstable/hal/debian/patches/65-keyboard-addon-repeated.patch
URL: http://svn.debian.org/wsvn/pkg-utopia/packages/unstable/hal/debian/patches/65-keyboard-addon-repeated.patch?rev=1458&op=file
==============================================================================
--- packages/unstable/hal/debian/patches/65-keyboard-addon-repeated.patch (added)
+++ packages/unstable/hal/debian/patches/65-keyboard-addon-repeated.patch Wed May  2 09:40:38 2007
@@ -1,0 +1,12 @@
+diff -Nur hal-0.5.9/hald/linux/addons/addon-keyboard.c hal-0.5.9.new/hald/linux/addons/addon-keyboard.c
+--- hal-0.5.9/hald/linux/addons/addon-keyboard.c	2007-03-07 22:52:19.000000000 +0100
++++ hal-0.5.9.new/hald/linux/addons/addon-keyboard.c	2007-04-17 20:12:26.000000000 +0200
+@@ -244,7 +244,7 @@
+ 					}
+ 				}
+ 			}
+-		} else if (event.type == EV_KEY && key_name[event.code] != NULL && event.value == 1) {
++		} else if (event.type == EV_KEY && key_name[event.code] != NULL && event.value) {
+ 			dbus_error_init (&error);
+ 			libhal_device_emit_condition (ctx, udi, 
+ 						      "ButtonPressed",

Added: packages/unstable/hal/debian/patches/66-NULL-fstype-crash.patch
URL: http://svn.debian.org/wsvn/pkg-utopia/packages/unstable/hal/debian/patches/66-NULL-fstype-crash.patch?rev=1458&op=file
==============================================================================
--- packages/unstable/hal/debian/patches/66-NULL-fstype-crash.patch (added)
+++ packages/unstable/hal/debian/patches/66-NULL-fstype-crash.patch Wed May  2 09:40:38 2007
@@ -1,0 +1,69 @@
+commit f6fbf88c4af259bc4670f5d48c93ab4f70838074
+Author: Danny Kukawka <danny.kukawka at web.de>
+Date:   Tue Apr 17 14:38:03 2007 +0200
+
+    fix possible segfault in probe-volume if vid->type == NULL
+    
+    Fix possible segfaults in probe-volume and libhal if vid->type == NULL. Added
+    checks for vid->type != NULL to probe-volume.c and new checks for parameter
+    (LIBHAL_CHECK_PARAM_VALID) of libhal_changeset_set_property_string().
+    
+    This fix also fd.o bug #10429.
+
+diff --git a/hald/linux/probing/probe-volume.c b/hald/linux/probing/probe-volume.c
+index d5963db..b5f71c0 100644
+--- a/hald/linux/probing/probe-volume.c
++++ b/hald/linux/probing/probe-volume.c
+@@ -122,8 +122,11 @@ set_volume_id_values (LibHalContext *ctx, const char *udi, LibHalChangeSet *cs,
+ 	libhal_changeset_set_property_string (cs, "volume.fsusage", usage);
+ 	HAL_DEBUG (("volume.fsusage = '%s'", usage));
+ 
+-	libhal_changeset_set_property_string (cs, "volume.fstype", vid->type);
++	if (!libhal_changeset_set_property_string (cs, "volume.fstype", vid->type))
++		libhal_changeset_set_property_string (cs, "volume.fstype", "");
++
+ 	HAL_DEBUG(("volume.fstype = '%s'", vid->type));
++
+ 	if (vid->type_version[0] != '\0') {
+ 		libhal_changeset_set_property_string (cs, "volume.fsversion", vid->type_version);
+ 		HAL_DEBUG(("volume.fsversion = '%s'", vid->type_version));
+@@ -141,12 +144,23 @@ set_volume_id_values (LibHalContext *ctx, const char *udi, LibHalChangeSet *cs,
+ 			libhal_changeset_set_property_string (cs, "info.product", volume_label);
+ 		}
+ 		else {
+-			snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++			if (vid->type != NULL) {
++				snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++			} else {
++				snprintf (buf, sizeof (buf), "Volume (unknown)");
++			}
++
+ 			libhal_changeset_set_property_string (cs, "info.product", buf);
++				
+ 		}
+ 		g_free(volume_label);
+ 	} else {
+-		snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++		if (vid->type != NULL) {
++			snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++		} else {
++			snprintf (buf, sizeof (buf), "Volume (unknown)");
++		}
++
+ 		libhal_changeset_set_property_string (cs, "info.product", buf);
+ 	}
+ }
+diff --git a/libhal/libhal.c b/libhal/libhal.c
+index 4ddac9e..fb9800a 100644
+--- a/libhal/libhal.c
++++ b/libhal/libhal.c
+@@ -3810,6 +3810,9 @@ libhal_changeset_set_property_string (LibHalChangeSet *changeset, const char *ke
+ {
+ 	LibHalChangeSetElement *elem;
+ 
++	LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE);
++	LIBHAL_CHECK_PARAM_VALID(value, "*value", FALSE);
++
+ 	elem = calloc (1, sizeof (LibHalChangeSetElement));
+ 	if (elem == NULL)
+ 		goto out;

Added: packages/unstable/hal/debian/patches/67-fix-probe-volume.patch
URL: http://svn.debian.org/wsvn/pkg-utopia/packages/unstable/hal/debian/patches/67-fix-probe-volume.patch?rev=1458&op=file
==============================================================================
--- packages/unstable/hal/debian/patches/67-fix-probe-volume.patch (added)
+++ packages/unstable/hal/debian/patches/67-fix-probe-volume.patch Wed May  2 09:40:38 2007
@@ -1,0 +1,74 @@
+commit 674d2415aed43b43b81b262cbad2228f0477e34a
+Author: Danny Kukawka <danny.kukawka at web.de>
+Date:   Tue Apr 17 15:09:22 2007 +0200
+
+    fix problems with case if vid->label[0] is '\0'
+    
+    Fix problems with the case where vid->label[0] is '\0'. Don't call
+    strdup_valid_utf8 in this case, simply ignore the label in this case.
+    Cleaned up the code to prevent code duplication.
+
+    This fix fd.o bug #10362.
+
+diff --git a/hald/linux/probing/probe-volume.c b/hald/linux/probing/probe-volume.c
+index b5f71c0..b003b25 100644
+--- a/hald/linux/probing/probe-volume.c
++++ b/hald/linux/probing/probe-volume.c
+@@ -131,38 +131,34 @@ set_volume_id_values (LibHalContext *ctx, const char *udi, LibHalChangeSet *cs,
+ 		libhal_changeset_set_property_string (cs, "volume.fsversion", vid->type_version);
+ 		HAL_DEBUG(("volume.fsversion = '%s'", vid->type_version));
+ 	}
++
+ 	libhal_changeset_set_property_string (cs, "volume.uuid", vid->uuid);
+ 	HAL_DEBUG(("volume.uuid = '%s'", vid->uuid));
+ 
+-	/* we need to be sure for a utf8 valid label, because dbus accept only utf8 valid strings */
+-	volume_label = strdup_valid_utf8 (vid->label);
+-	if( volume_label != NULL ) {
+-		libhal_changeset_set_property_string (cs, "volume.label", volume_label);
+-		HAL_DEBUG(("volume.label = '%s'", volume_label));
++	if(vid->label != NULL && vid->label[0] != '\0') {
++		/* we need to be sure for a utf8 valid label, because dbus accept only utf8 valid strings */
++		volume_label = strdup_valid_utf8 (vid->label);
++		if( volume_label != NULL ) {
++			libhal_changeset_set_property_string (cs, "volume.label", volume_label);
++			HAL_DEBUG(("volume.label = '%s'", volume_label));
+ 		
+-		if (strlen(volume_label) > 0) {	
+-			libhal_changeset_set_property_string (cs, "info.product", volume_label);
+-		}
+-		else {
+-			if (vid->type != NULL) {
+-				snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
+-			} else {
+-				snprintf (buf, sizeof (buf), "Volume (unknown)");
++			if (strlen(volume_label) > 0) {	
++				libhal_changeset_set_property_string (cs, "info.product", volume_label);
++				g_free(volume_label);
++				return;
+ 			}
+ 
+-			libhal_changeset_set_property_string (cs, "info.product", buf);
+-				
+-		}
+-		g_free(volume_label);
+-	} else {
+-		if (vid->type != NULL) {
+-			snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
+-		} else {
+-			snprintf (buf, sizeof (buf), "Volume (unknown)");
++			g_free(volume_label);
+ 		}
++	}
+ 
+-		libhal_changeset_set_property_string (cs, "info.product", buf);
++	if (vid->type != NULL) {
++		snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++	} else {
++		snprintf (buf, sizeof (buf), "Volume (unknown)");
+ 	}
++
++	libhal_changeset_set_property_string (cs, "info.product", buf);
+ }
+ 
+ static void




More information about the Pkg-utopia-commits mailing list