+2002-05-09 Dick Porter <dick@ximian.com>
+
+ * threads.c:
+ * semaphores.c:
+ * processes.c:
+ * mutexes.c:
+ * handles-private.h:
+ * events.c:
+ * Makefile.am: Remove now-unused file wait-private.h
+
+2002-05-08 Dick Porter <dick@ximian.com>
+
+ * shared.c: Better error messages, and report when daemon
+ connection fails rather than blocking forever. Do some more
+ shared memory sanity checking.
+
+ * handles.c: Better error messages when connecting to shared
+ memory and the handle daemon. Fall back to non-shared handles if
+ an error occurs. Set the default back to 'shared handles'. Fix a
+ crashing bug in scratch space allocation that mangled the block
+ headers.
+
+2002-05-07 Miguel de Icaza <miguel@ximian.com>
+
+ * handles.c (shared_init): Disable SHM for now, people have too
+ many problems with this, and the diagnostics are not helping.
+
+2002-05-06 Dan Lewis <dihlewis@yahoo.co.uk>
+
+ * io.c: CreateFile sets win32 last error.
+
+2002-05-05 Dick Porter <dick@ximian.com>
+
+ * wapi-private.h:
+ * handles-private.h:
+ * io.c:
+ * io-private.h:
+ * mutexes.c:
+ * mutex-private.h:
+ * processes.c:
+ * process-private.h:
+ * semaphores.c:
+ * semaphore-private.h:
+ * sockets.c:
+ * socket-private.h:
+ * events.c:
+ * event-private.h: Simplify the WapiHandleOps struct: take out all
+ the file-specific entries, leaving just the items that operate on
+ handles themselves. Split the close operation into shared and
+ private parts: shared close is called by the daemon.
+
+ * handles.c: As above, but also pass handle allocation, ref and
+ unref operations to the daemon. Populate the handle_ops array at
+ compile time, because the daemon needs to call ops on handles too.
+ Don't bother to track open handle counts any more, the daemon does
+ that.
+
+ * threads.c:
+ * thread-private.h: As above, but also make the thread data
+ handle-private.
+
+ * shared.c: Fork a handle daemon if the calling process created
+ the shared memory segment.
+
+ * daemon.c:
+ * daemon-messages.c:
+ * daemon-messages.h:
+ * Makefile.am: Build a daemon to manage handle allocation and
+ destruction without needing to lock the shared memory
+
+2002-04-30 Jeffrey Stedfast <fejj@ximian.com>
+
+ * atomic.c: Changed to use a normal mutex rather than a spinlock
+ since a lot of platforms seem to not have them :\
+
+2002-04-30 Dick Porter <dick@ximian.com>
+
+ * Completely rewrote the handle waiting code: removed the helper
+ thread and its attendant complexity. All handle waiting is now
+ abstracted into the WaitForSingleObject() and
+ WaitForMultipleObjects() functions.
+
+ * Implemented inter-process sharing of handles using sysv shared
+ memory. This makes handles even more opaque, with a handle now
+ just an index into an array.
+
+2002-04-25 Dan Lewis <dihlewis@yahoo.co.uk>
+
+ * io.c: unitialized pointer in GetCurrentDirectory.
+
+Sat Apr 20 13:37:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c: destroy the mutex at thread destruction
+ (if/when thread destruction code will be actually called).
+ When protecting a tls data pointer from the gc, use also the
+ thread id in the key.
+
+Wed Apr 17 18:36:27 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * timed-thread.c: avoid race condition when setting the thread to
+ detached.
+
+2002-04-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * jit.h: to more #include lines to avoid breaking compilation
+ under windows when upgrading mingw and w32api to version
+ 1.3 (thanks Dick!).
+
+2002-04-16 Dick Porter <dick@ximian.com>
+
+ * atomic.h: Explanatory comment about lack of 80386 support
+
+2002-04-15 Dick Porter <dick@ximian.com>
+
+ * atomic.h: use xaddl for InterlockedIncrement() and
+ InterlockedDecrement(). Use cmpxchgl in a loop for
+ InterlockedExchange() and InterlockedExchangePointer().
+
+Mon Apr 15 13:31:22 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * unicode.c: fix unicode_len() to not access uninitialized memory
+ (and updated to conform to mono code style).
+
+Fri Mar 29 17:15:11 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * io.c: EEXISTS is ignored for directory creation.
+ * mono-mutex.h: remove silly "pragma }" that emacs users insert
+ because they use a broken editor:-)
+
+2002-03-28 Dick Porter <dick@ximian.com>
+
+ * sockets.h:
+ * sockets.c:
+ * io.c:
+ * handles.h:
+ * handles.c: Warning cleanups
+
+2002-03-27 Dan Lewis <dihlewis@yahoo.co.uk>
+
+ * unicode.h, unicode.c: changed to gunichar2
+ * io.h, io.c: changed strings to gunichar2*, added
+ SetFileAttributes(), GetCurrentDirectory(), SetCurrentDirectory(),
+ some fixes to FindFirstFile() and friends.
+
+2002-03-26 Dick Porter <dick@ximian.com>
+
+ * types.h: Implement the large integer struct
+
+ * timefuncs.h:
+ * timefuncs.c: Dummy functions that don't yet implement
+ QueryPerformanceCounter() and QueryPerformanceFrequency()
+
+ * threads.h:
+ * threads.c: Implement SleepEx()
+
+ * system.h:
+ * system.c: Beginnings of GetSystemInfo()
+
+ * mono-mutex.c (pthread_mutex_timedlock): Fix a ms/ns conversion
+ thinko
+
+ * context.h:
+ * context.c: Dummy function that doesnt yet implement
+ GetThreadContext()
+
+ * atomic.h:
+ * atomic.c: Interlocked functions
+
+Mon Mar 25 13:01:40 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c: use a gc-safe hash table to store tls pointers.
+
+2002-03-22 Dick Porter <dick@ximian.com>
+
+ * threads.c: Fix a race condition where a thread can start and
+ exit before the handle has been properly initialised (no reason
+ why the handle couldn't be initialised beforehand, so do so)
+
+ Fix a ms to ns conversion magnitude thinko.
+
+2002-03-21 Dick Porter <dick@ximian.com>
+
+ * semaphores.c: Fix a problem when waiting for one or more
+ semaphores, and another semaphore is Released (all waiting
+ semaphores assumed they were signalled)
+
+2002-03-29 Dan Lewis <dihlewis@yahoo.co.uk>
+
+ * io.h, io.c, uglify.h: added MoveFile, CopyFile, CreateDirectory,
+ RemoveDirectory, GetFileAttributes, GetFileAttributesEx
+
+2002-03-19 Dietmar Maurer <dietmar@ximian.com>
+
+ * threads.c (Sleep): bug fix: 1ms == 1000000ns
+
+2002-03-19 Dan Lewis <dihlewis@yahoo.co.uk>
+
+ * io.h, io.c, events.c, mutexes.c, semaphores.c, sockets.c,
+ threads.c, io.c: added flush method to handles.
+
+ * io.c: FlushFileBuffers() and FindFirstFile() functions.
+
+Thu Mar 7 17:21:52 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c, timed-thread.c, wait.c: Boehm-GC anable.
+
2002-02-20 Dick Porter <dick@ximian.com>
* io-layer.h: Always build without cygwin support on windows