backend/session: allow wlr_session_find_gpus to return an error

Sometimes wlr_session_find_gpus will encounter an error. This is
different from finding zero GPUs.

On error, wlr_session_find_gpus already returns -1. However, this is
casted to size_t, so callers uncorrectly assume this is a success.

Instead, make wlr_session_find_gpus return a ssize_t and allow callers
to handle the error accordingly.
This commit is contained in:
Simon Ser 2020-12-28 10:52:40 +01:00
parent 7febdc7334
commit e8d56ca415
3 changed files with 12 additions and 7 deletions

View file

@ -96,7 +96,7 @@ void wlr_session_close_file(struct wlr_session *session,
*/
bool wlr_session_change_vt(struct wlr_session *session, unsigned vt);
size_t wlr_session_find_gpus(struct wlr_session *session,
ssize_t wlr_session_find_gpus(struct wlr_session *session,
size_t ret_len, struct wlr_device **ret);
#endif