mirror of
https://github.com/labwc/labwc.git
synced 2025-10-29 05:40:24 -04:00
labnag: return special value on timeout
...to avoid taking either of the <then> or <else> branches on timeout.
This commit is contained in:
parent
073fd02300
commit
09b4e9605e
4 changed files with 16 additions and 3 deletions
|
|
@ -29,13 +29,12 @@
|
||||||
#include <wayland-client.h>
|
#include <wayland-client.h>
|
||||||
#include <wayland-cursor.h>
|
#include <wayland-cursor.h>
|
||||||
#include <wlr/util/log.h>
|
#include <wlr/util/log.h>
|
||||||
|
#include "action-prompt-codes.h"
|
||||||
#include "pool-buffer.h"
|
#include "pool-buffer.h"
|
||||||
#include "cursor-shape-v1-client-protocol.h"
|
#include "cursor-shape-v1-client-protocol.h"
|
||||||
#include "wlr-layer-shell-unstable-v1-client-protocol.h"
|
#include "wlr-layer-shell-unstable-v1-client-protocol.h"
|
||||||
|
|
||||||
#define LABNAG_MAX_HEIGHT 500
|
#define LABNAG_MAX_HEIGHT 500
|
||||||
#define LAB_EXIT_FAILURE 255
|
|
||||||
#define LAB_EXIT_SUCCESS 0
|
|
||||||
|
|
||||||
struct conf {
|
struct conf {
|
||||||
PangoFontDescription *font_description;
|
PangoFontDescription *font_description;
|
||||||
|
|
@ -1239,6 +1238,7 @@ nag_run(struct nag *nag)
|
||||||
wl_display_cancel_read(nag->display);
|
wl_display_cancel_read(nag->display);
|
||||||
}
|
}
|
||||||
if (nag->pollfds[FD_TIMER].revents & POLLIN) {
|
if (nag->pollfds[FD_TIMER].revents & POLLIN) {
|
||||||
|
exit_status = LAB_EXIT_TIMEOUT;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (nag->pollfds[FD_SIGNAL].revents & POLLIN) {
|
if (nag->pollfds[FD_SIGNAL].revents & POLLIN) {
|
||||||
|
|
|
||||||
|
|
@ -50,6 +50,7 @@ executable(
|
||||||
server_protos,
|
server_protos,
|
||||||
epoll_dep,
|
epoll_dep,
|
||||||
],
|
],
|
||||||
|
include_directories: [labwc_inc],
|
||||||
install: true
|
install: true
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
9
include/action-prompt-codes.h
Normal file
9
include/action-prompt-codes.h
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||||
|
#ifndef LABWC_ACTION_PROMPT_CODES_H
|
||||||
|
#define LABWC_ACTION_PROMPT_CODES_H
|
||||||
|
|
||||||
|
#define LAB_EXIT_FAILURE 255
|
||||||
|
#define LAB_EXIT_TIMEOUT 254
|
||||||
|
#define LAB_EXIT_SUCCESS 0
|
||||||
|
|
||||||
|
#endif /* LABWC_ACTION_PROMPT_CODES_H */
|
||||||
|
|
@ -8,6 +8,7 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <wlr/types/wlr_scene.h>
|
#include <wlr/types/wlr_scene.h>
|
||||||
#include <wlr/util/log.h>
|
#include <wlr/util/log.h>
|
||||||
|
#include "action-prompt-codes.h"
|
||||||
#include "common/macros.h"
|
#include "common/macros.h"
|
||||||
#include "common/list.h"
|
#include "common/list.h"
|
||||||
#include "common/mem.h"
|
#include "common/mem.h"
|
||||||
|
|
@ -860,9 +861,11 @@ action_check_prompt_result(pid_t pid, int exit_code)
|
||||||
|
|
||||||
wlr_log(WLR_INFO, "Found pending prompt for exit code %d", exit_code);
|
wlr_log(WLR_INFO, "Found pending prompt for exit code %d", exit_code);
|
||||||
struct wl_list *actions = NULL;
|
struct wl_list *actions = NULL;
|
||||||
if (exit_code == 0) {
|
if (exit_code == LAB_EXIT_SUCCESS) {
|
||||||
wlr_log(WLR_INFO, "Selected the 'then' branch");
|
wlr_log(WLR_INFO, "Selected the 'then' branch");
|
||||||
actions = action_get_actionlist(prompt->action, "then");
|
actions = action_get_actionlist(prompt->action, "then");
|
||||||
|
} else if (exit_code == LAB_EXIT_TIMEOUT) {
|
||||||
|
/* no-op */
|
||||||
} else {
|
} else {
|
||||||
wlr_log(WLR_INFO, "Selected the 'else' branch");
|
wlr_log(WLR_INFO, "Selected the 'else' branch");
|
||||||
actions = action_get_actionlist(prompt->action, "else");
|
actions = action_get_actionlist(prompt->action, "else");
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue