summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Koegel <eric.koegel@gmail.com>2014-09-16 20:40:16 +0300
committerEric Koegel <eric.koegel@gmail.com>2014-09-22 09:18:48 +0300
commit950ca44ff07af3c47cbdfde5333d05b3c8f509cd (patch)
tree18fd5f4396f29ad9d815be6469679350123622f1
parenta3a4725ef4d63034981b0915194930bfb8d274f1 (diff)
downloadxfce4-session-950ca44ff07af3c47cbdfde5333d05b3c8f509cd.tar.gz
Check the return value of select
-rw-r--r--xfce4-session/xfsm-legacy.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/xfce4-session/xfsm-legacy.c b/xfce4-session/xfsm-legacy.c
index 7f29ea36..88c3ee06 100644
--- a/xfce4-session/xfsm-legacy.c
+++ b/xfce4-session/xfsm-legacy.c
@@ -442,6 +442,7 @@ xfsm_legacy_perform_session_save (void)
fd_set fds;
int msecs;
int fd;
+ int ret;
msecs = (int)(g_timer_elapsed (timer, NULL) * 1000);
if (msecs >= WM_SAVE_YOURSELF_TIMEOUT)
@@ -452,7 +453,15 @@ xfsm_legacy_perform_session_save (void)
FD_SET (fd, &fds);
tv.tv_sec = (WM_SAVE_YOURSELF_TIMEOUT - msecs) / 1000;
tv.tv_usec = ((WM_SAVE_YOURSELF_TIMEOUT - msecs) % 1000) * 1000;
- select (fd + 1, &fds, NULL, &fds, &tv);
+ ret = select (fd + 1, &fds, NULL, &fds, &tv);
+ if (ret == -1)
+ {
+ perror ("select");
+ }
+ else if (ret == 0)
+ {
+ g_warning ("xfsm_legacy_perform_session_save, select: no data before timeout reached");
+ }
}
}
g_timer_destroy (timer);