From 6cb4d79c94631530291a9d62d6d827730c46533a Mon Sep 17 00:00:00 2001 From: Pasi Kallinen Date: Sat, 8 May 2010 05:27:50 +0000 Subject: [PATCH] Check that we actually do write the inprogress-lock. git-svn-id: svn://katsu.triplehelix.org/dgamelaunch/trunk@560 db0b04b0-f4d1-0310-9a6d-de3e77497b0e --- dgamelaunch.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/dgamelaunch.c b/dgamelaunch.c index d7e6b89..fd3c13a 100644 --- a/dgamelaunch.c +++ b/dgamelaunch.c @@ -205,12 +205,14 @@ gen_inprogress_lock (int game, pid_t pid, char* ttyrec_filename) { char *lockfile = NULL, filebuf[80]; int fd; - size_t len; + size_t len, wrlen; struct flock fl = { 0 }; snprintf (filebuf, sizeof(filebuf), "%d\n%d\n%d\n", pid, win.ws_row, win.ws_col); + wrlen = strlen(filebuf); + fl.l_type = F_WRLCK; fl.l_whence = SEEK_SET; fl.l_start = 0; @@ -228,7 +230,10 @@ gen_inprogress_lock (int game, pid_t pid, char* ttyrec_filename) graceful_exit (68); } - write (fd, filebuf, strlen (filebuf)); + if (write (fd, filebuf, wrlen) != wrlen) { + debug_write("inprogress-lock write"); + graceful_exit(70); + } return lockfile; }