diff options
author | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2016-04-22 12:03:25 +0900 |
---|---|---|
committer | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2016-04-23 23:07:48 +0900 |
commit | e4d815dc48c660a336670ec3cc67e6becbdcacfc (patch) | |
tree | 7c9be7ba0a493b5fe40c6ea99167a0ecbe9a54f7 /src/bin/efreet | |
parent | 0e9cf93c3069f68d906a8b706fa1169ad1fd2073 (diff) | |
download | efl-e4d815dc48c660a336670ec3cc67e6becbdcacfc.tar.gz |
efreetd - reduce memory usage by using stringshare much more
lots of long paths for monitoring file paths for icons etc. are in
memory for efreetd. this reduces that memory by sharing them much more.
@optimization
Diffstat (limited to 'src/bin/efreet')
-rw-r--r-- | src/bin/efreet/efreetd_cache.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/bin/efreet/efreetd_cache.c b/src/bin/efreet/efreetd_cache.c index fefc852dd0..9e8444fee4 100644 --- a/src/bin/efreet/efreetd_cache.c +++ b/src/bin/efreet/efreetd_cache.c @@ -89,7 +89,7 @@ subdir_cache_dir_free(Subdir_Cache_Dir *cd) static void * subdir_cache_hash_add(void *hash, const char *key, void *data) { - if (!hash) hash = eina_hash_string_superfast_new(EINA_FREE_CB(subdir_cache_dir_free)); + if (!hash) hash = eina_hash_stringshared_new(EINA_FREE_CB(subdir_cache_dir_free)); if (!hash) return NULL; eina_hash_add(hash, key, data); return hash; @@ -140,7 +140,7 @@ subdir_cache_init(void) // if we don't have a hash in the subdir cache - allocate it if (!subdir_cache->dirs) - subdir_cache->dirs = eina_hash_string_superfast_new(EINA_FREE_CB(subdir_cache_dir_free)); + subdir_cache->dirs = eina_hash_stringshared_new(EINA_FREE_CB(subdir_cache_dir_free)); } static void @@ -303,7 +303,7 @@ icon_cache_update_cache_cb(void *data EINA_UNUSED) if ((!icon_flush) && (!icon_exts)) return ECORE_CALLBACK_CANCEL; if (icon_change_monitors) eina_hash_free(icon_change_monitors); - icon_change_monitors = eina_hash_string_superfast_new + icon_change_monitors = eina_hash_stringshared_new (EINA_FREE_CB(ecore_file_monitor_del)); icon_changes_listen(); subdir_cache_save(); @@ -360,7 +360,7 @@ desktop_cache_update_cache_cb(void *data EINA_UNUSED) desktop_queue = EINA_FALSE; if (desktop_change_monitors) eina_hash_free(desktop_change_monitors); - desktop_change_monitors = eina_hash_string_superfast_new + desktop_change_monitors = eina_hash_stringshared_new (EINA_FREE_CB(ecore_file_monitor_del)); desktop_changes_listen(); subdir_cache_save(); @@ -867,9 +867,9 @@ cache_init(void) goto error; } - icon_change_monitors = eina_hash_string_superfast_new + icon_change_monitors = eina_hash_stringshared_new (EINA_FREE_CB(ecore_file_monitor_del)); - desktop_change_monitors = eina_hash_string_superfast_new + desktop_change_monitors = eina_hash_stringshared_new (EINA_FREE_CB(ecore_file_monitor_del)); efreet_cache_update = 0; |