Hello,Attached please find two small patches for e_dbus and the places module. They fix segfaults for me (triggered in e_hal_property_bool_get()) that I was experiencing when resuming my laptop after suspend. It'd be great if you could review and apply them if considered adequate.
Thanks, Nick.
--- E-MODULES-EXTRA/places/src/e_mod_places.c 2011-01-18 13:18:43.000000000 -0500 +++ E-MODULES-EXTRA/places_tmp/src/e_mod_places.c 2011-01-19 11:32:38.000000000 -0500 @@ -942,6 +942,9 @@ str = e_hal_property_string_get(reply, "volume.fsusage", &err); if (err || !str || strcmp(str, "filesystem")) return; + + if (!v) return; + //~ v->uuid = e_hal_property_string_get(ret, "volume.uuid", &err); //~ if (err) goto error;
--- e_dbus/src/lib/hal/e_hal_util.c 2010-11-12 15:22:31.000000000 -0500 +++ e_dbus_tmp/src/lib/hal/e_hal_util.c 2011-01-19 11:40:10.000000000 -0500 @@ -32,6 +32,7 @@ { E_Hal_Property *prop; if (err) *err = 0; + if (!properties) return NULL; if (!properties->properties) return NULL; if (!key) return NULL; prop = eina_hash_find(properties->properties, key); @@ -46,6 +47,7 @@ { E_Hal_Property *prop; if (err) *err = 0; + if (!properties) return EINA_FALSE; if (!properties->properties) return EINA_FALSE; if (!key) return EINA_FALSE; prop = eina_hash_find(properties->properties, key); @@ -60,6 +62,7 @@ { E_Hal_Property *prop; if (err) *err = 0; + if (!properties) return 0; if (!properties->properties) return 0; if (!key) return 0; prop = eina_hash_find(properties->properties, key); @@ -74,6 +77,7 @@ { E_Hal_Property *prop; if (err) *err = 0; + if (!properties) return 0; if (!properties->properties) return 0; if (!key) return 0; prop = eina_hash_find(properties->properties, key); @@ -88,6 +92,7 @@ { E_Hal_Property *prop; if (err) *err = 0; + if (!properties) return 0; if (!properties->properties) return 0; if (!key) return 0; prop = eina_hash_find(properties->properties, key); @@ -102,6 +107,7 @@ { E_Hal_Property *prop; if (err) *err = 0; + if (!properties) return NULL; if (!properties->properties) return NULL; if (!key) return NULL; prop = eina_hash_find(properties->properties, key);
------------------------------------------------------------------------------ Protect Your Site and Customers from Malware Attacks Learn about various malware tactics and how to avoid them. Understand malware threats, the impact they can have on your business, and how you can protect your company and customers by using code signing. http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel