aboutsummaryrefslogtreecommitdiff
path: root/src/ui_elements.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui_elements.c')
-rw-r--r--src/ui_elements.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/ui_elements.c b/src/ui_elements.c
index 535bc0c..f072d45 100644
--- a/src/ui_elements.c
+++ b/src/ui_elements.c
@@ -87,15 +87,16 @@ passwd_input_cb(WINDOW *wnd, void *data, int key)
ui_thrd_force_update();
sleep(2);
- ui_ipc_msgrecv(MQ_IF, ipc_buf);
-
- ui_thrd_suspend();
- set_txtwindow_color(infownd, COLOR_PAIR(4), COLOR_PAIR(4) | A_BOLD);
- set_txtwindow_title(infownd, "ERROR");
- set_txtwindow_text(infownd, ipc_buf);
- ui_thrd_resume();
- while (wgetch(stdscr) != '\n') { };
+ if (ui_ipc_msgcount(MQ_IF) > 0) {
+ ui_ipc_msgrecv(MQ_IF, ipc_buf);
+ ui_thrd_suspend();
+ set_txtwindow_color(infownd, COLOR_PAIR(4), COLOR_PAIR(4) | A_BOLD);
+ set_txtwindow_title(infownd, "ERROR");
+ set_txtwindow_text(infownd, ipc_buf);
+ ui_thrd_resume();
+ while (wgetch(stdscr) != '\n') { };
+ }
ui_thrd_suspend();
set_txtwindow_active(infownd, false);