+2005-09-26 Sebastien Pouliot <sebastien@ximian.com>
+
+ * io.c: Apply patch from #76192 (Can't write files past 2gb on AMD64
+ (x86_64)) for Brion on IRC (Dick approved it).
+
+2005-09-23 Dick Porter <dick@ximian.com>
+
+ * processes.c: Don't wait for processes that have already been
+ signalled; also fix typo.
+
+ * handles.c: Improve locking inside new handle and handle
+ searching functions.
+
+2005-09-20 Dick Porter <dick@ximian.com>
+
+ * collection.c:
+ * processes.c: Periodically waitpid for known process IDs. Fixes
+ bug 74870.
+
+2005-09-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * io.c:
+ (CreateFile): if the file is a named pipe, treat the handle as a pipe,
+ not as a file. Fixes bug #76075.
+
+2005-08-27 Zoltan Varga <vargaz@gmail.com>
+
+ * atomic.h: Add support for intel icc.
+
+2005-08-25 Zoltan Varga <vargaz@gmail.com>
+
+ * io-layer.h: Include winbase.h not WinBase.h.
+
+2005-08-19 Dick Porter <dick@ximian.com>
+
+ * threads.c, threads.h, thread-private.h: Use a gsize to store the
+ thread ID, so it can hold a 64 bit value if needed.
+
+2005-07-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * error.c: map ENOENT to WSAECONNREFUSED. It might happen when
+ connecting to unix sockets. Closes bug #75632.
+
+2005-07-05 Dick Porter <dick@ximian.com>
+
+ * io.c: Make sure SIGPIPE is ignored when calling write(2).
+ Prevents the runtime exiting when writing to a closed pipe,
+ fixing bug 75468.
+
+2005-06-30 Dick Porter <dick@ximian.com>
+
+ * shared.c (_wapi_shm_semaphores_init): Add some helpful error
+ messages when semget () fails due to lack of resources.
+
+2005-06-21 Dick Porter <dick@ximian.com>
+
+ * mutex-private.h:
+ * thread-private.h:
+ * mutexes.c:
+ * threads.c: Keep a list of owned mutexes in each thread handle,
+ so that it is easier to abandon them when the thread exits.
+ Removes a bottleneck when multiple threads are finishing in
+ parallel.
+
+2005-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * io.c: (GetLogicalDrives) when a bogus line is read, don't leak memory.
+ When the buffer has not enough space, close the file before returning.
+
+2005-06-09 Duncan Mak <duncan@novell.com>
+
+ * *.h: Added G_BEGIN_DECLS and G_END_DECLS where appropriate to
+ all public headers. Fixes #74919.
+
+2005-05-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * atomic.h: Add IA64 atomic ops.
+
+2005-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * processes.c: make ExitCode be valid even if the user didn't call
+ WaitForExit() and is just polling on HasExited.
+
+2005-05-17 Dick Porter <dick@ximian.com>
+
+ * io.c (file_getfilesize): Clear the error value, so that files
+ with sizes with the low bits 0xFFFFFFFF can be distinguished from
+ a genuine error.
+
+2005-05-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * shared.c: forgot to ignore a warning.
+
+2005-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * shared.c: don't display warnings after reboots.
+
+2005-05-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * sockets.c: on windows, getsockopt/setsockopt for send/receive timeout
+ use an integer in milliseconds. We were using a struct timeval.
+
+2005-05-06 Dick Porter <dick@ximian.com>
+
+ * handles-private.h:
+ * mutexes.c:
+ * wapi-private.h:
+ * shared.h:
+ * shared.c:
+ * wait.c:
+ * handles.c:
+ * collection.h: Use SysV semaphores for managing access to the
+ shared memory - in return for the ludicrous api we get
+ synchronisation primitives that can be cleaned up by the kernel
+ even when a process quits unexpectedly. This removes the
+ timestamp issues.
+
+2005-05-05 Lluis Sanchez Gual <lluis@novell.com>
+
+ * handles.c: Always use polling in the waits, since
+ mono_cond_timedwait can't be interruped by the thread abort signal.
+
+2005-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * events.c: calling Set on AutoResetEvent several times has the same
+ effect as calling it only once if no thread is waiting for it.
+
+2005-04-29 Dick Porter <dick@ximian.com>
+
+ * processes.c (EnumProcesses): Use a GArray instead of a GPtrArray
+ now it's storing pids not handles, also fixes memory leak caused
+ by unclear glib documentation.
+
+ * sockets.c (WSACleanup): Remove unused variable
+
+2005-04-29 Dick Porter <dick@ximian.com>
+
+ * handles.c (_wapi_handle_check_share_by_pid): For systems that
+ don't have file descriptor info in /proc check that the original
+ opener of a file is still there, if a share violation would
+ otherwise happen.
+
+2005-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * handles.c:
+ * handles-private.h: added _wapi_handle_forecch that loops through all
+ the handles and call a callback function when a handle of the given
+ type is found.
+
+ * sockets.c: no need to keep open sockets in an array, as we have them
+ in the handles structure.
+
+ Fixes bug #74755.
+
+2005-04-28 Dick Porter <dick@ximian.com>
+
+ * processes.c: Cope with handles that are only around for as long
+ as the search is running. If we're searching for process handles,
+ check to see if the process is still running and signal it if not.
+
+ * handles.c (_wapi_search_handle): Search in the shared space as
+ well. Fixed bug 74752.
+
+ * mutexes.c:
+ * handles.c (_wapi_handle_new_from_offset):
+ _wapi_handle_new_for_existing_ns () was doing exactly the same as
+ this, so deleted it.
+
+2005-04-26 Dick Porter <dick@ximian.com>
+
+ * handles.c: Fix stupid thinko where if a new shared handle is
+ created but a collection was needed to free some space, it
+ returned an error anyway. Should fix the messages shown in bug
+ 74659.
+
+2005-04-25 Dick Porter <dick@ximian.com>
+
+ * handles.c (_wapi_handle_check_share): Only consider mono
+ processes when looking to see if a file is still being held open,
+ while checking share permissions.
+
+2005-04-25 Dick Porter <dick@ximian.com>
+
+ * sockets.c:
+ * io.c:
+ * wapi-private.h (struct _WapiHandleOps):
+ * handles.c (_wapi_handle_unref): When destroying handles, save
+ the handle data and call the close function only after the array
+ slot has been cleared. This prevents race conditions with file
+ descriptors, fixing bug 74713.
+
+ * mutexes.c: Delete the handle close functions, they didn't do
+ anything anyway
+
+ * error.c (_wapi_get_win32_file_error): Add a mapping for EINTR so
+ the "Unknown error" g_warning doesn't get displayed.
+
+2005-04-25 Dick Porter <dick@ximian.com>
+
+ * wapi-private.h:
+ * threads.c: Make thread handles process-private for now to take
+ some of the space pressure off the shared memory, while I work on
+ a real fix.
+
+2005-04-21 Dick Porter <dick@ximian.com>
+
+ * handles.c (_wapi_handle_check_share): Make sure there is a "fd"
+ dir in /proc before blowing away handle info. Fixes bug 74649.
+
+2005-04-21 Dick Porter <dick@ximian.com>
+
+ * wait.c (WaitForMultipleObjectsEx): Implement special waits
+
+ * handles.c (_wapi_handle_wait_signal_poll_share): Don't return a
+ timeout, just wait briefly for the private signals and let the
+ waiting thread test again. This prevents us missing shared
+ signals.
+
+2005-04-21 Dick Porter <dick@ximian.com>
+
+ * collection.h (_WAPI_HANDLE_COLLECTION_EXPIRED_INTERVAL): Reduce
+ the time before a slot is considered too old and deleted. This is
+ a workaround while I come up with a proper fix.
+
+2005-04-21 Dick Porter <dick@ximian.com>
+
+ * mutexes.c:
+ * processes.c:
+ * threads.c:
+ * handles.c (_wapi_handle_new): Turn assertions into errors.
+
+ * collection.c (_wapi_handle_collect): Use symbols not magic
+ numbers for timeout values
+
+2005-04-19 Dick Porter <dick@ximian.com>
+
+ * mutexes.c:
+ * wait.c:
+ * handles.c (_wapi_handle_count_signalled_handles)
+ * handles-private.h (_wapi_handle_shared_lock_handle): Use new
+ shared handle locks in critical sections.
+
+ * handles.c (_wapi_handle_new_for_existing_ns): Reuse old handles
+ if there is already one there.
+
+ * handles.c (_wapi_handle_ref): It was possible for a process to
+ exit before getting around to updating shared handle timestamps,
+ so do it here too.
+
+Tue Apr 19 16:25:47 CEST 2005 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c: fix lookup of the thread id in the has table:
+ always use the id value, not the pointer to the id.
+
+2005-04-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * handles.c: fix handle returned in _wapi_handle_search_handle. Dick
+ pointed it out.
+
+2005-04-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * io-layer/sockets.c: FIONBIO with a TRUE argument means we want
+ non-blocking IO, not the other way around.
+
2005-04-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* handles.c: