![](https://seccdn.libravatar.org/avatar/af22e20b6884acbc89be6d7736c43e92.jpg?s=120&d=mm&r=g)
Hello community, here is the log from the commit of package hal checked in at Wed Jul 19 19:09:57 CEST 2006. -------- --- hal/hal.changes 2006-06-18 21:36:50.000000000 +0200 +++ hal/hal.changes 2006-07-18 13:42:20.000000000 +0200 @@ -1,0 +2,12 @@ +Mon Jul 17 16:48:18 CEST 2006 - dkukawka@suse.de + +- fixed bugs: + - bug #187012: fixed start() and stop() in rchal +- added patches: + - hal-fix-memoryleak_libhal-libhal-storage_187108.diff: fixed + bug #187108 to close an other memory leak in the libs related + to usage of DBusError + - hal-fix-mount_options_vfat.diff: fix bug #192993, add fmask and + dmask to vfat mount options + +------------------------------------------------------------------- New: ---- hal-fix-memoryleak_libhal-libhal-storage_187108.diff hal-fix-mount_options_vfat.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ hal.spec ++++++ --- /var/tmp/diff_new_pack.iQNsYq/_old 2006-07-19 19:09:48.000000000 +0200 +++ /var/tmp/diff_new_pack.iQNsYq/_new 2006-07-19 19:09:48.000000000 +0200 @@ -19,7 +19,7 @@ License: Other License(s), see package, Other uncritical OpenSource License Group: System/Daemons Version: 0.5.6 -Release: 37 +Release: 38 Autoreqprov: on Summary: Daemon for Collecting Hardware Information # SUSE specific patches @@ -56,6 +56,7 @@ Patch117: hal-fix-probe_smbios_parse_bug172204.diff Patch118: hal-fix_workaround_libhal-strage_get_volume_size.diff Patch119: hal-fix-memoryleak_libhal-storage_185032.diff +Patch120: hal-fix-memoryleak_libhal-libhal-storage_187108.diff # external patches from HAL List and backports Patch200: hal-add-scsi-type.diff Patch201: hal-fix-SG_IO_bug145147.diff @@ -66,6 +67,7 @@ Patch206: hal-vio-bus.patch Patch207: hal-fix-int-size-for-alignment-error-01.patch Patch208: hal-fix-memoryleak_libhal-storage_backported_177427.diff +Patch209: hal-fix-mount_options_vfat.diff # patches for testing: Patch300: hal-change_to_hashtables.patch # Sources: @@ -193,6 +195,8 @@ %patch10 %patch11 %patch119 +%patch120 +%patch209 #%patch300 #rm -rf py-compile 4> /dev/null || : #ln -s /usr/share/automake-1.9/py-compile py-compile 2> /dev/null || : @@ -308,6 +312,15 @@ %{_bindir}/hal-device-manager %changelog -n hal +* Mon Jul 17 2006 - dkukawka@suse.de +- fixed bugs: +- bug #187012: fixed start() and stop() in rchal +- added patches: +- hal-fix-memoryleak_libhal-libhal-storage_187108.diff: fixed + bug #187108 to close an other memory leak in the libs related + to usage of DBusError +- hal-fix-mount_options_vfat.diff: fix bug #192993, add fmask and + dmask to vfat mount options * Sun Jun 18 2006 - dkukawka@suse.de - added patch: - hal-fix-memoryleak_libhal-storage_185032.diff: fixed bug ++++++ hal-fix-memoryleak_libhal-libhal-storage_187108.diff ++++++ --- libhal/libhal.h 2005-11-02 16:38:14.000000000 +0100 +++ libhal/libhal.h 2006-07-17 12:38:17.000000000 +0200 @@ -46,6 +46,13 @@ } \ } while(0) +#define LIBHAL_FREE_DBUS_ERROR(_dbus_error_) \ + do { \ + if (dbus_error_is_set(_dbus_error_)) \ + dbus_error_free (_dbus_error_); \ + } while (0) + + /** * @addtogroup LibHal * --- libhal/libhal.c 2006-07-17 13:06:32.000000000 +0200 +++ libhal/libhal.c 2006-07-17 13:05:39.000000000 +0200 @@ -757,6 +757,7 @@ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } + LIBHAL_FREE_DBUS_ERROR(&error); return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } @@ -2072,8 +2073,6 @@ if (value == NULL) { fprintf (stderr, "%s %d : error allocating memory\n", __FILE__, __LINE__); - /** @todo FIXME cleanup */ - return NULL; } dbus_message_unref (message); @@ -3045,6 +3044,7 @@ "sender='org.freedesktop.Hal'," "path='/org/freedesktop/Hal/Manager'", &myerror); if (dbus_error_is_set (&myerror)) { + dbus_move_error (&myerror, error); fprintf (stderr, "%s %d : Error unsubscribing to signals, error=%s\n", __FILE__, __LINE__, error->message); /** @todo clean up */ --- libhal-storage/libhal-storage.c 2006-07-17 13:10:42.000000000 +0200 +++ libhal-storage/libhal-storage.c 2006-07-17 15:48:51.000000000 +0200 @@ -979,6 +979,7 @@ return drive; error: + LIBHAL_FREE_DBUS_ERROR(&error); libhal_free_string (bus_textual); libhal_free_property_set (properties); libhal_drive_free (drive); @@ -1130,6 +1131,7 @@ libhal_free_property_set (properties); return vol; error: + LIBHAL_FREE_DBUS_ERROR(&error); libhal_free_string (vol_fsusage_textual); libhal_free_string (disc_type_textual); libhal_free_property_set (properties); @@ -1201,6 +1203,8 @@ } else if (libhal_device_query_capability (hal_ctx, udi, "storage", &err2)) { found_udi = strdup (udi); } + LIBHAL_FREE_DBUS_ERROR(&err1); + LIBHAL_FREE_DBUS_ERROR(&err2); } libhal_free_string_array (hal_udis); @@ -1210,6 +1214,7 @@ free (found_udi); out: + LIBHAL_FREE_DBUS_ERROR(&error); return result; } @@ -1256,6 +1261,7 @@ free (found_udi); out: + LIBHAL_FREE_DBUS_ERROR(&error); return result; } @@ -1524,6 +1530,7 @@ result[*num_volumes] = NULL; out: + LIBHAL_FREE_DBUS_ERROR(&error); libhal_free_string_array (udis); return result; } @@ -1533,49 +1540,65 @@ char * libhal_drive_policy_default_get_mount_root (LibHalContext *hal_ctx) { + char *result; DBusError error; LIBHAL_CHECK_LIBHALCONTEXT(hal_ctx, NULL); dbus_error_init (&error); - return libhal_device_get_property_string (hal_ctx, "/org/freedesktop/Hal/devices/computer", - "storage.policy.default.mount_root", &error); + result = libhal_device_get_property_string (hal_ctx, "/org/freedesktop/Hal/devices/computer", + "storage.policy.default.mount_root", &error); + LIBHAL_FREE_DBUS_ERROR(&error); + + return result; } dbus_bool_t libhal_drive_policy_default_use_managed_keyword (LibHalContext *hal_ctx) { + dbus_bool_t result; DBusError error; LIBHAL_CHECK_LIBHALCONTEXT(hal_ctx, FALSE); dbus_error_init (&error); - return libhal_device_get_property_bool (hal_ctx, "/org/freedesktop/Hal/devices/computer", - "storage.policy.default.use_managed_keyword", &error); + result = libhal_device_get_property_bool (hal_ctx, "/org/freedesktop/Hal/devices/computer", + "storage.policy.default.use_managed_keyword", &error); + LIBHAL_FREE_DBUS_ERROR(&error); + + return result; } char * libhal_drive_policy_default_get_managed_keyword_primary (LibHalContext *hal_ctx) { + char *result; DBusError error; LIBHAL_CHECK_LIBHALCONTEXT(hal_ctx, NULL); dbus_error_init (&error); - return libhal_device_get_property_string (hal_ctx, "/org/freedesktop/Hal/devices/computer", - "storage.policy.default.managed_keyword.primary", &error); + result = libhal_device_get_property_string (hal_ctx, "/org/freedesktop/Hal/devices/computer", + "storage.policy.default.managed_keyword.primary", &error); + LIBHAL_FREE_DBUS_ERROR(&error); + + return result; } char * libhal_drive_policy_default_get_managed_keyword_secondary (LibHalContext *hal_ctx) { + char *result; DBusError error; LIBHAL_CHECK_LIBHALCONTEXT(hal_ctx, NULL); dbus_error_init (&error); - return libhal_device_get_property_string (hal_ctx, "/org/freedesktop/Hal/devices/computer", - "storage.policy.default.managed_keyword.secondary", &error); + result = libhal_device_get_property_string (hal_ctx, "/org/freedesktop/Hal/devices/computer", + "storage.policy.default.managed_keyword.secondary", &error); + LIBHAL_FREE_DBUS_ERROR(&error); + + return result; } /*************************************************************************/ @@ -1620,6 +1643,7 @@ properties = libhal_device_get_all_properties (hal_ctx, udi, &error); if (properties == NULL) goto error; + for (libhal_psi_init (&it, properties); libhal_psi_has_more (&it); libhal_psi_next (&it)) { int type; char *key; @@ -1674,6 +1698,7 @@ } } error: + LIBHAL_FREE_DBUS_ERROR(&error); libhal_free_property_set (properties); } ++++++ hal-fix-memoryleak_libhal-storage_185032.diff ++++++ --- /var/tmp/diff_new_pack.iQNsYq/_old 2006-07-19 19:09:48.000000000 +0200 +++ /var/tmp/diff_new_pack.iQNsYq/_new 2006-07-19 19:09:48.000000000 +0200 @@ -37,7 +37,7 @@ { /** @todo implement for UTF8 */ - free (str); -+ if (str != 0) { ++ if (str != NULL) { + free (str); + str = NULL; + } ++++++ hal-fix-mount_options_vfat.diff ++++++ --- fdi/policy/10osvendor/20-storage-methods.fdi.org 2006-07-18 10:22:05.000000000 +0200 +++ fdi/policy/10osvendor/20-storage-methods.fdi 2006-07-18 10:45:37.000000000 +0200 @@ -54,6 +54,8 @@ <append key="volume.mount.valid_options" type="strlist">codepage=</append> <append key="volume.mount.valid_options" type="strlist">iocharset=</append> <append key="volume.mount.valid_options" type="strlist">umask=</append> + <append key="volume.mount.valid_options" type="strlist">fmask=</append> + <append key="volume.mount.valid_options" type="strlist">dmask=</append> <append key="volume.mount.valid_options" type="strlist">uid=</append> <append key="volume.mount.valid_options" type="strlist">flush</append> </match> ++++++ rc.hal ++++++ --- hal/rc.hal 2006-06-18 21:36:50.000000000 +0200 +++ hal/rc.hal 2006-07-18 13:42:21.000000000 +0200 @@ -55,7 +55,7 @@ chown haldaemon:haldaemon $HALDAEMON_PIDDIR; fi if [ -e $HALDAEMON_PID ]; then - if [ -d /proc/`cat $HALDAEMON_PID` ]; then + if ceckproc $HALDAEMON_BIN ; then echo "HAL already started. Not starting." exit 0; else @@ -82,7 +82,8 @@ stop) echo -n "Shutting down HAL daemon" killproc -p $HALDAEMON_PID -TERM $HALDAEMON_BIN - rm -f $HALDAEMON_PID; + rc_status + rm -f $HALDAEMON_PID; rc_status -v ;; try-restart) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit-unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit-help@opensuse.org
participants (1)
-
root@suse.de