summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/syscalls.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2003-05-21 08:01:57 +0000
committerCorinna Vinschen <corinna@vinschen.de>2003-05-21 08:01:57 +0000
commit5c768c978c52c277536c28925161148407206d63 (patch)
tree9cd32501cc344c4fb8d1343313c3021e4adc63be /winsup/cygwin/syscalls.cc
parent3a9c82d0117666ddb0c140389d05d057db3fad0c (diff)
downloadcygnal-5c768c978c52c277536c28925161148407206d63.tar.gz
cygnal-5c768c978c52c277536c28925161148407206d63.tar.bz2
cygnal-5c768c978c52c277536c28925161148407206d63.zip
* shared_info.h: Match shared_name declaration with below change.
* shared.cc (shared_name): Use incoming char * parameter instead of local static buffer. (open_shared): Accomodate new calling convention for shared_name. * exceptions.cc (events_init): Ditto. * sigproc.cc (getsem): Ditto. * syscalls.cc (login): Ditto. (logout): Ditto. (pututline): Ditto.
Diffstat (limited to 'winsup/cygwin/syscalls.cc')
-rw-r--r--winsup/cygwin/syscalls.cc12
1 files changed, 9 insertions, 3 deletions
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc
index f66363f7d..625e05957 100644
--- a/winsup/cygwin/syscalls.cc
+++ b/winsup/cygwin/syscalls.cc
@@ -2540,7 +2540,9 @@ login (struct utmp *ut)
pututline (ut);
endutent ();
/* Writing to wtmp must be atomic to prevent mixed up data. */
- HANDLE mutex = CreateMutex (NULL, FALSE, shared_name ("wtmp_mutex", 0));
+ char mutex_name[MAX_PATH];
+ HANDLE mutex = CreateMutex (NULL, FALSE,
+ shared_name (mutex_name, "wtmp_mutex", 0));
if (mutex)
while (WaitForSingleObject (mutex, INFINITE) == WAIT_ABANDONED)
;
@@ -2578,7 +2580,9 @@ logout (char *line)
memset (ut_buf.ut_user, 0, sizeof ut_buf.ut_user);
time (&ut_buf.ut_time);
/* Writing to wtmp must be atomic to prevent mixed up data. */
- HANDLE mutex = CreateMutex (NULL, FALSE, shared_name ("wtmp_mutex", 0));
+ char mutex_name[MAX_PATH];
+ HANDLE mutex = CreateMutex (NULL, FALSE,
+ shared_name (mutex_name, "wtmp_mutex", 0));
if (mutex)
while (WaitForSingleObject (mutex, INFINITE) == WAIT_ABANDONED)
;
@@ -2747,7 +2751,9 @@ pututline (struct utmp *ut)
return;
/* Read/write to utmp must be atomic to prevent overriding data
by concurrent processes. */
- HANDLE mutex = CreateMutex (NULL, FALSE, shared_name ("utmp_mutex", 0));
+ char mutex_name[MAX_PATH];
+ HANDLE mutex = CreateMutex (NULL, FALSE,
+ shared_name (mutex_name, "utmp_mutex", 0));
if (mutex)
while (WaitForSingleObject (mutex, INFINITE) == WAIT_ABANDONED)
;