diff --git a/src/navigation.c b/src/navigation.c index abc93a01..e1518d84 100644 --- a/src/navigation.c +++ b/src/navigation.c @@ -26,12 +26,12 @@ struct mount_identifier_tag { REFOBJECT_DEFINE_TYPE(mount_identifier_t); -static int mount_identifier_compare(void *compare_arg, void *a, void *b) +static int mount_identifier_compare__for_tree(void *compare_arg, void *a, void *b) { const char *id_a, *id_b; - id_a = refobject_get_name(a); - id_b = refobject_get_name(b); + id_a = mount_identifier_get_mount(a); + id_b = mount_identifier_get_mount(b); if (!id_a || !id_b || id_a == id_b) { return 0; @@ -62,3 +62,8 @@ mount_identifier_t * mount_identifier_new(const char *mount) return n; } + +int mount_identifier_compare(mount_identifier_t *a, mount_identifier_t *b) +{ + return mount_identifier_compare__for_tree(NULL, a, b); +} diff --git a/src/navigation.h b/src/navigation.h index 4d468b64..b42d7370 100644 --- a/src/navigation.h +++ b/src/navigation.h @@ -16,6 +16,8 @@ REFOBJECT_FORWARD_TYPE(mount_identifier_t); void navigation_initialize(void); void navigation_shutdown(void); -mount_identifier_t * mount_identifier_new(const char *mount); +mount_identifier_t * mount_identifier_new(const char *mount); +#define mount_identifier_get_mount(identifier) refobject_get_name((identifier)) +int mount_identifier_compare(mount_identifier_t *a, mount_identifier_t *b); #endif