EAPI Efreet_Desktop * efreet_desktop_new(const char *file) { Efreet_Desktop *desktop = NULL; char *tmp; EINA_SAFETY_ON_NULL_RETURN_VAL(file, NULL); tmp = eina_file_path_sanitize(file); if (!tmp) return NULL; desktop = efreet_cache_desktop_find(tmp); free(tmp); if (desktop) { desktop->ref++; if (!efreet_desktop_environment_check(desktop)) { efreet_desktop_free(desktop); return NULL; } return desktop; } return efreet_desktop_uncached_new(file); }
EAPI Efreet_Desktop * efreet_desktop_new(const char *file) { Efreet_Desktop *desktop = NULL; if (!file) return NULL; desktop = efreet_cache_desktop_find(file); if (desktop) { desktop->ref++; if (!efreet_desktop_environment_check(desktop)) { efreet_desktop_free(desktop); return NULL; } return desktop; efreet_desktop_free(desktop); } return efreet_desktop_uncached_new(file); }
EAPI Efreet_Desktop * efreet_desktop_new(const char *file) { Efreet_Desktop *desktop = NULL; EINA_SAFETY_ON_NULL_RETURN_VAL(file, NULL); desktop = efreet_cache_desktop_find(file); if (desktop) { desktop->ref++; if (!efreet_desktop_environment_check(desktop)) { efreet_desktop_free(desktop); return NULL; } return desktop; efreet_desktop_free(desktop); } return efreet_desktop_uncached_new(file); }