* dll_init.h (class dll_list): Reorder functions to avoid compiler "can't

inline" warnings.
* security.h (class cygsid): Ditto.
* sigproc.cc (get_proc_lock): Ditto.
* sigproc.h (class sigframe): Ditto.
* sync.h (class muto): Ditto.
* fhandler.h (fhandler_base::get_guard): Actually MAKE virtual as previously
indicated.
* pipe.cc (make_pipe): Remove extraneous set_errno.
* syscalls.cc (_open): Ditto.
* select.cc (peek_pipe): Need to check that there is still something to read
from the pipe after acquiring the mutex since another process/thread could have
eaten the input before we got to acquiring the lock.  (Thanks to Nick Duffek
for this inspiration.)
This commit is contained in:
Christopher Faylor
2001-11-03 03:32:27 +00:00
parent 01432054cb
commit 243a041bd0
10 changed files with 87 additions and 58 deletions

View File

@ -22,14 +22,16 @@ class muto
public:
class muto *next;
const char *name;
muto() {}
/* The real constructor. */
muto(int inh, const char *name);
void *operator new (size_t, void *p) {return p;}
void *operator new (size_t) {return ::new muto; }
void operator delete (void *) {;} /* can't handle allocated mutos
currently */
muto() {}
/* The real constructor. */
muto(int inh, const char *name);
~muto ();
int acquire (DWORD ms = INFINITE) __attribute__ ((regparm(1))); /* Acquire the lock. */
int release (); /* Release the lock. */