aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIsaac Freund <ifreund@ifreund.xyz>2020-05-14 17:45:42 +0200
committerSimon Ser <contact@emersion.fr>2020-05-18 16:48:44 +0200
commit666498db015ad1439a8916bce609baf8fa042b5d (patch)
treeae464b90886f4cdb8838974edcb67709568162fd
parent2988ebb6f37e201ba5884aa434aa7120fa951852 (diff)
Make wlr_xcursor_manager_load() return a bool
This is currently inconsistent with the rest of the library and a bit of a footgun for new compositors. However, this breaks the API in a very unfortunate way for existing compositors.
-rw-r--r--include/wlr/types/wlr_xcursor_manager.h2
-rw-r--r--types/wlr_xcursor_manager.c10
2 files changed, 6 insertions, 6 deletions
diff --git a/include/wlr/types/wlr_xcursor_manager.h b/include/wlr/types/wlr_xcursor_manager.h
index 25c277c1..a9530214 100644
--- a/include/wlr/types/wlr_xcursor_manager.h
+++ b/include/wlr/types/wlr_xcursor_manager.h
@@ -46,7 +46,7 @@ void wlr_xcursor_manager_destroy(struct wlr_xcursor_manager *manager);
/**
* Ensures an xcursor theme at the given scale factor is loaded in the manager.
*/
-int wlr_xcursor_manager_load(struct wlr_xcursor_manager *manager,
+bool wlr_xcursor_manager_load(struct wlr_xcursor_manager *manager,
float scale);
/**
diff --git a/types/wlr_xcursor_manager.c b/types/wlr_xcursor_manager.c
index 7333a7a1..3526285b 100644
--- a/types/wlr_xcursor_manager.c
+++ b/types/wlr_xcursor_manager.c
@@ -32,27 +32,27 @@ void wlr_xcursor_manager_destroy(struct wlr_xcursor_manager *manager) {
free(manager);
}
-int wlr_xcursor_manager_load(struct wlr_xcursor_manager *manager,
+bool wlr_xcursor_manager_load(struct wlr_xcursor_manager *manager,
float scale) {
struct wlr_xcursor_manager_theme *theme;
wl_list_for_each(theme, &manager->scaled_themes, link) {
if (theme->scale == scale) {
- return 0;
+ return true;
}
}
theme = calloc(1, sizeof(struct wlr_xcursor_manager_theme));
if (theme == NULL) {
- return 1;
+ return false;
}
theme->scale = scale;
theme->theme = wlr_xcursor_theme_load(manager->name, manager->size * scale);
if (theme->theme == NULL) {
free(theme);
- return 1;
+ return false;
}
wl_list_insert(&manager->scaled_themes, &theme->link);
- return 0;
+ return true;
}
struct wlr_xcursor *wlr_xcursor_manager_get_xcursor(