summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@enlightenment.org>2013-11-21 15:50:13 -0500
committerMike Blumenkrantz <zmike@enlightenment.org>2013-11-21 15:59:33 -0500
commite3d2706ac5882f3a803a82fa26d832fe143c2b12 (patch)
tree97ebdcbfa5abd53f67ec886d6e00a75e70308de5
parent6b9f1d70bc7501b387bdd714d43833a27cff8b36 (diff)
track udisks2 volume::storage relationships
-rw-r--r--src/bin/e_fm/e_fm_main_udisks2.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/bin/e_fm/e_fm_main_udisks2.c b/src/bin/e_fm/e_fm_main_udisks2.c
index 33c0d8176..139034e24 100644
--- a/src/bin/e_fm/e_fm_main_udisks2.c
+++ b/src/bin/e_fm/e_fm_main_udisks2.c
@@ -387,8 +387,21 @@ out:
387 if (v && v->validated) e_fm_ipc_volume_add(v); 387 if (v && v->validated) e_fm_ipc_volume_add(v);
388 if (s) 388 if (s)
389 { 389 {
390 Eina_List *l;
391
390 if (!block) //cdrom :/ 392 if (!block) //cdrom :/
391 s->udi = eina_stringshare_add(udi); 393 s->udi = eina_stringshare_add(udi);
394 EINA_LIST_FOREACH(_e_vols, l, v)
395 {
396 if ((v->parent == s->udi) || (v->parent == s->dbus_path))
397 {
398 if (!v->storage)
399 {
400 v->storage = s;
401 s->volumes = eina_list_append(s->volumes, v);
402 }
403 }
404 }
392 _e_fm_main_udisks2_storage_add_send(s); 405 _e_fm_main_udisks2_storage_add_send(s);
393 } 406 }
394} 407}
@@ -1275,6 +1288,8 @@ _e_fm_main_udisks2_storage_del(const char *path)
1275 eldbus_proxy_unref(s->proxy); 1288 eldbus_proxy_unref(s->proxy);
1276 eldbus_object_unref(obj); 1289 eldbus_object_unref(obj);
1277 } 1290 }
1291 while (s->volumes)
1292 _volume_del(eina_list_data_get(s->volumes));
1278 _e_fm_shared_device_storage_free(s); 1293 _e_fm_shared_device_storage_free(s);
1279} 1294}
1280 1295