87 Commits

Author SHA1 Message Date
Tor Lillqvist
1f604fe208 Don't call WSAEventSelect() on -1
If g_io_win32_sock_close() has been called on a socket channel, don't
later in g_io_win32_free() call WSAEventSelect() on its fd which has
been set to -1.
2009-11-04 23:59:18 +02:00
Hans Breuer
4a50bab276 Define fstat() for msvc build 2009-05-30 15:33:14 +02:00
Dan Winship
ac68024ec1 Move this out of gmain.c and make it part of the public API. (Part of Bug
* glib/gpoll.c (g_poll): Move this out of gmain.c and make it part
	of the public API. (Part of Bug 505361 - gunixinputstream.c
	assumes poll() available.)

svn path=/trunk/; revision=7535
2008-09-23 16:32:30 +00:00
Tor Lillqvist
2c5de8ed26 Stylistic changes. Plug an unlikely memory leak that occurred in
2008-08-27  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Stylistic changes. Plug an unlikely memory leak
	that occurred in create_thread() if closing the thread handle
	failed. Add more error messages to g_io_win32_free() that are
	printed only when debugging. Plug handle leak, a socket channel's
	event was never closed.


svn path=/trunk/; revision=7405
2008-08-27 16:49:17 +00:00
Tor Lillqvist
755400be44 Drop #if 0 code.
2008-08-21  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Drop #if 0 code.


svn path=/trunk/; revision=7385
2008-08-21 13:42:35 +00:00
Tor Lillqvist
54d62aa368 Don't bother compiling the binary compatibility
2008-08-21  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Don't bother compiling the binary
	compatibility g_io_channel_win32_new_stream_socket()
	function that has not been mentioned in any header since 2.0 on
	Win64.

	* glib/glib.symbols: Mark it, too, private, and don't export it on
	Win64.


svn path=/trunk/; revision=7384
2008-08-21 11:47:04 +00:00
Tor Lillqvist
5becc45bf4 Improve run-time warning messages. Drop some #if 0 code.
2008-08-21  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Improve run-time warning messages. Drop
	some #if 0 code.


svn path=/trunk/; revision=7383
2008-08-21 11:35:51 +00:00
Tor Lillqvist
2da8893a72 Minor comment improvements.
2008-08-21  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Minor comment improvements.


svn path=/trunk/; revision=7382
2008-08-21 11:24:00 +00:00
Tor Lillqvist
971ab2b50f Bug 500246 - Bug fixes for giowin32
2008-08-20  Tor Lillqvist  <tml@novell.com>

	Bug 500246 - Bug fixes for giowin32

	* glib/giowin32.c (read_thread) (write_thread): Change the nbytes
	variables to signed.
	(g_io_channel_win32_make_pollfd): Fix an obvious error in the file
	descriptor case leftover after the patch from bug #333098 on
	2006-03-02. Thanks to Marcus Brinkmann.


svn path=/trunk/; revision=7373
2008-08-20 01:30:31 +00:00
Tor Lillqvist
f7f48d5c08 Bug 324234 - Using g_io_add_watch_full() to wait for connect() to return
2008-08-20  Tor Lillqvist  <tml@novell.com>

	Bug 324234 - Using g_io_add_watch_full() to wait for connect() to
	return on a non-blocking socket returns prematurely

	Bug 548278 - Async GETs connections are always terminated
	unexpectedly on Windows

	* glib/giowin32.c: Add one more state variable to the
	GIOWin32Channel struct, ever_writable. Initialise it to FALSE, set
	to TRUE when the WSAEventSelect() indicates FD_WRITE, and never
	reset to FALSE.

	Don't do the WSASetEvent() in g_io_win32_prepare() unless
	ever_writable is TRUE. Don't automatically indicate G_IO_OUT in
	g_io_win32_check() unless ever_writable is TRUE.

	This fixes the behaviour of the test case program in bug #548278,
	and the "Testcase for the spurious OUT event bug" in bug
	#324234. It also doesn't seem to break anything. Not that there is
	any exhaustive test suite...

	Add a comment with a list of bugs that are related to the code in
	this file.


svn path=/trunk/; revision=7372
2008-08-19 23:48:16 +00:00
Tor Lillqvist
0e2384faa8 glib/giowin32.c glib/gmain.c glib/gspawn-win32.c Change gssize casts
2008-08-04  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c
	* glib/gmain.c
	* glib/gspawn-win32.c
	* glib/gspawn-win32-helper.c: Change gssize casts introduced on
	2008-07-28 to gintptr casts now that we have that. gssize is as
	such the same as gintptr on both 32- and 64-bit Windows, but the
	gintptr name indicates that it is used to hold pointers, i.e. also
	HANDLEs.


svn path=/trunk/; revision=7306
2008-08-04 18:46:59 +00:00
Tor Lillqvist
a3fa74853a Fix problems on 64-bit Windows. Avoid warnings, some of which indicated
2008-07-28  Tor Lillqvist  <tml@novell.com>

	Fix problems on 64-bit Windows. Avoid warnings, some of which
	indicated actual problems, some which were just annoyances. 

	Where casts to an integer type are needed for pointers, use
	gssize. Technically intptr_t would be the more proper type, but we
	still want to be compilable with MSVS6 and 7 which don't have
	intptr_t. MSVS8 and 9 do have intptr_t, but in <crtdefs.h>, not
	<stdint.h>.

	Use %p to print out handles. Use gssize casts when assigning
	GPollFD::fd fields.

	Use G_GSIZE_FORMAT when printing size_t values.
	
	* configure.in: Define automake conditional G_OS_WIN32_X64 which
	is true on Win64.

	* glib/giochannel.h: Use slightly different prototype for
	g_io_channel_win32_new_messages() on Win64 with gsize instead of
	guint.

	* glib/giowin32.c
	* glib/gmain.c
	* glib/gspawn-win32.c
	* tests/testglib.c: Generic changes as described above.

	* glib/gmain.h: Don't bother mentioning GIMP in comment.

	* glib/grel.c (tuple_hash_2): Use all bits of pointer.

	* glib/gspawn-win32.c
	* glib/gspawn-win32-helper.c: Use gssize types in the
	communication between parent and helper process, so that we can
	pass process handles, which are pointers, also on Win64.

	* glib/gtimer.c (g_time_val_to_iso8601): time_t is 64 bits on
	Win64 so we can't pass the address of a GTimeVal::tv_sec which is
	a long directly to gmtime(). On the other hand, changing
	GTimeVal::tv_sec to be a gint64 on Win64 is not really feasible
	either, as that would then require changes in much code that uses
	GTimeVals.

	* glib/gspawn-win32.c
	* glib/Makefile.am: Call the helper programs
	gspawn-win64-helper.exe and gspawn-win64-helper-console.exe on
	Win64, to avoid potential risk of running a 32-bit version of the
	helper.


svn path=/trunk/; revision=7260
2008-07-28 00:24:14 +00:00
Tor Lillqvist
80ecc30841 glib/glib.symbols glib/gconvert.c glib/gdir.c glib/gfileutils.c
2008-07-27  Tor Lillqvist  <tml@novell.com>

	* glib/glib.symbols
	* glib/gconvert.c
	* glib/gdir.c
	* glib/gfileutils.c
	* glib/giowin32.c
	* glib/gspawn-win32.c
	* glib/gutils.c
	* glib/gwin32.c: Bypass the Windows "ABI compatibility" symbols on
	_WIN64. As there hasn't been any widely deployed 64-bit Windows
	builds of the really old GLib (pre-2.8.1) versions those refer to,
	there is no need to have the "ABI compatibility" versions in the
	DLL.

	* glib/makegalias.pl: Handle #ifndef _WIN64: Just output it, too.


svn path=/trunk/; revision=7257
2008-07-27 17:15:16 +00:00
Tor Lillqvist
55790836fb Patch from Yu Kuan that makes watched sockets behave much better. See
2008-07-20  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c (g_io_win32_prepare): Patch from Yu Kuan that
	makes watched sockets behave much better. See gtk-devel-list
	archives from May for the (unfortunately rather meager)
	discussion. This patch fixes the presented simple test program,
	which reasonably could be expected to work.


svn path=/trunk/; revision=7220
2008-07-20 20:44:39 +00:00
Christian Persch
9c17697b56 Use g_set_error_literal where appropriate. Patch from bug #535947.
svn path=/trunk/; revision=7051
2008-06-16 16:53:58 +00:00
Tor Lillqvist
fc8ee1f68a g_win32_error_message() works fine for the Winsock WSA* error codes, too,
2008-06-11  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: g_win32_error_message() works fine for the
	Winsock WSA* error codes, too, so drop the winsock_error_message()
	function.


svn path=/trunk/; revision=7010
2008-06-11 18:06:46 +00:00
Tor Lillqvist
b8eefbc99d Make debugging printout more compact and add more information to it. No
2008-05-17  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Make debugging printout more compact and add
	more information to it. No changes to actual functionality.


svn path=/trunk/; revision=6898
2008-05-17 02:34:17 +00:00
Tor Lillqvist
09d6197943 When WSAEnumNetworkEvents() signals FD_CONNECT that means that the
2007-07-06  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c (g_io_win32_check): When WSAEnumNetworkEvents()
	signals FD_CONNECT that means that the connection attempt
	finished, either successfully or failed. Test explicitly whether
	the connnection succeeded and set either G_IO_OUT if it did,
	G_IO_ERR|G_IO_HUP if it failed.

	Make sure we never set both G_IO_OUT and G_IO_HUP simultaneously
	because in Unix poll(2) POLLOUT and POLLHUP are mutually
	exclusive.

	Ignore whether the caller wants to watch G_IO_HUP or not. Always
	select for FD_CLOSE because Unix poll(2) also ignores whether
	POLLHUP in set the requested events bitmask or not.


svn path=/trunk/; revision=5600
2007-07-06 01:22:53 +00:00
Tor Lillqvist
e5ef75596e Handle GIOChannels for file descriptors connected to the console
2007-01-07  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Handle GIOChannels for file descriptors
	connected to the console separately. This would typically be the
	fd 0, 1, or 2 (if not redirected) in a console application. For
	such fds we don't need a separate thread, as console HANDLEs are
	waitable objects. (#359202, Michiel de Hoon)


svn path=/trunk/; revision=5222
2007-01-07 03:02:28 +00:00
Tor Lillqvist
d5b919142b Implement setting/clearing G_IO_FLAG_NONBLOCK for channels attached to
2006-05-12  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c (g_io_win32_sock_set_flags): Implement
	setting/clearing G_IO_FLAG_NONBLOCK for channels attached to
	sockets. (#341192)
	(g_io_win32_unimpl_set_flags): set_flags method for the
	unimplemented case.
2006-05-12 13:20:36 +00:00
Marcus Brinkmann
6f0ef1bae2 Implement watches for GIOChannels for write file descriptors on Win32
2006-03-02  Marcus Brinkmann  <mb@g10code.de>

	Implement watches for GIOChannels for write file descriptors on
	Win32 (#333098).

	* glib/giowin32.c (GIOWin32Channel): Add a new direction field.
	(read_thread): Initialize direction.
	(write_thread): New function.
	(buffer_write): New function.
	(g_io_win32_prepare): Handle the G_IO_WIN32_FILE_DESC case for the
	write direction.
	(g_io_win32_fd_write): Call buffer_write() if there is a writer
	thread.
	(g_io_win32_fd_close): Set space_avail_event for writer threads.
	(g_io_win32_fd_create_watch): Create the writer thread if
	condition is G_IO_OUT.
	(g_io_channel_win32_make_pollfd): Likewise here.
2006-03-11 21:03:00 +00:00
Tor Lillqvist
4884c293d1 Don't call g_warning(). (#320688) Instead set error and return failure.
2005-11-05  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c (g_io_win32_set_flags): Don't call g_warning().
	(#320688) Instead set error and return failure.
2005-11-08 08:46:57 +00:00
Tor Lillqvist
6a3a7adc17 Totally rewritten socket channel implementation. See discussion in bug
2005-07-09  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Totally rewritten socket channel
	implementation. See discussion in bug #147392.
2005-07-08 23:27:31 +00:00
Tor Lillqvist
3e78c3c95d Always claim file descriptors open to devices are readable, since we can't
2005-03-30  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c (g_io_win32_fd_get_flags_internal): Always claim
	file descriptors open to devices are readable, since we can't
	know. fstat() doesn't gve any useful information.
2005-03-30 12:01:27 +00:00
Matthias Clasen
608a31b98e Make PLT-reduction work with gcc4, and don't include everything in
2005-03-13  Matthias Clasen  <mclasen@redhat.com>

	Make PLT-reduction work with gcc4, and don't include
	everything in galias.h:

	* glib/glib.symbols: Group symbols by header and source file.
	* glib/makegalias.pl: Protect definitions by the same
	preprocessor symbols used to guard the headers. Move
	the alias declarations to a separate file which is
	produced when calling makegalias.pl -def
	* glib/Makefile.am (galiasdef.c): Add a rule to generate this
	file.
	* glib/*.c: Include galias.h after the other GLib headers,
	include galiasdef.c at the bottom.
2005-03-14 04:26:57 +00:00
Tor Lillqvist
ab908b3c45 Include winsock2.h before windows.h, to avoid compilation errors with
2005-02-11  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Include winsock2.h before windows.h, to avoid
	compilation errors with MSVC. (#167105)
2005-02-11 22:43:32 +00:00
Tor Lillqvist
02ef59aeb7 configure.in (G_LIBS_EXTRA) I think we can include <winsock2.h> and link
2005-02-05  Tor Lillqvist  <tml@novell.com>

	* configure.in (G_LIBS_EXTRA)
	* glib/giowin32.c: I think we can include <winsock2.h> and link
	with -lws2_32. Only Windows 95 originally didn't have Winsock 2,
	and it's available as an update for it. Not that we use any actual
	Winsock 2 -only features, but still, simpler to link directly with
	ws2_32.dll instead of going through wsock32.dll.
2005-02-05 22:39:40 +00:00
Tor Lillqvist
cf6e3acdb5 Fix a write to freed memory: Unlock the channel's mutex before unrefing
2004-12-06  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c (g_io_win32_finalize): Fix a write to freed
	memory: Unlock the channel's mutex before unrefing the channel.
2004-12-06 23:43:43 +00:00
Matthias Clasen
8a7eecd7c6 Introduce the idea of a filename encoding, which is *literally* the
2004-10-27  Matthias Clasen  <mclasen@redhat.com>

	Introduce the idea of a filename encoding, which is
	*literally* the filename encoding on Unix. On windows,
	use the Unicode name converted to UTF-8. (#156325,
	Tor Lillqvist, Owen Taylor)

	* glib/gdir.[hc]:
	* glib/gconvert.[hc]:
	* glib/gfileutils.[hc]:
	* glib/gutils.[hc]:
	* glib/giowin32.c: On Windows, keep old ABI versions
	of GLib pathname api for DLL ABI stability. Use different
	names for the new-style UTF-8 versions. Hide this through
	a #define.

	* glib/gstdio.[hc]: New files containing wrappers for
	POSIX pathname api.

	* glib/glib.symbols: Add new symbols.

	* glib/makegalias.pl: Drop Win32 specific .def syntax,
	include gstdio.h
2004-10-27 16:46:29 +00:00
Matthias Clasen
dafdffd751 Implement the same PLT reduction technique used in GTK+:
Thu Sep 16 02:03:15 2004  Matthias Clasen  <maclas@gmx.de>

	Implement the same PLT reduction technique used in GTK+:
2004-09-16 06:05:53 +00:00
Tor Lillqvist
39d921007e Tell select_thread to break out of its loop. Prevents a thread leak.
2004-08-21  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
	break out of its loop. Prevents a thread leak. (#147392, Peter
	Zelezny)
2004-08-21 21:29:35 +00:00
John Ehresman
14892c1dc8 glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free) Initialize
2004-07-01  John Ehresman  <jpe@wingide.com>

	* glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
	Initialize reset_send & reset_recv fields and don't close
	sockets unless they were created.  (#145153)
2004-07-01 16:17:54 +00:00
Tor Lillqvist
b5456a91d7 Remove two duplicated lines. Thanks to Benoît Carpentier.
2004-05-10  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
	lines. Thanks to Benoît Carpentier.
2004-05-09 23:48:57 +00:00
Tor Lillqvist
9b4080611a glib/giowin32.c glib/gmain.c glib/gstrfuncs.c Decorating variable
2004-04-10  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c
	* glib/gmain.c
	* glib/gstrfuncs.c
	* glib/gthread.c: Decorating variable definitions with
	__declspec(dllexport) causes problems on Cygwin build, and isn't
	really needed for a native Win32 build with mingw or MSVC, so
	remove. (#138402, Roger Leigh)

	* glib/libcharset/localcharset.c: Use Win32-specific code also on
	Cygwin.
	* tests/uri-test.c: Don't assume that local filenames are in UTF-8
	on Cygwin, either. (#138412, Roger Leigh)
2004-04-10 01:55:57 +00:00
15 2003 Andrew Lanoix
94d79f087b Bind inter-thread comminication sockets to INADDR_LOOPBACK instead of
Sat Nov 22 14:16:51.15 2003  Andrew Lanoix  <alanoix@umich.edu>

* glib/giowin32.c: Bind inter-thread comminication
sockets to INADDR_LOOPBACK instead of INADDR_ANY.
2003-11-22 19:28:04 +00:00
Tor Lillqvist
e2797b3525 Avoid UNLOCKing the critical section twice, which might cause a hang.
2003-08-25  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c (read_thread): Avoid UNLOCKing the critical
	section twice, which might cause a hang. (#120653)

	* glib/giowin32.c (g_io_channel_unix_new): Warn if fd is both a
	valid file descriptor and socket.
2003-08-25 21:37:57 +00:00
Tor Lillqvist
98ba2b5ee3 Pass real &optval and &optlen to getsockopt() instead of NULL. Don't
2003-06-25  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c (g_io_channel_unix_new): Pass real &optval and
	&optlen to getsockopt() instead of NULL. Don't remember why I
	thought that NULL could be used (as we don't actually use the
	returned value for anything), the Platform SDK documentation
	doesn't imply so.
2003-06-25 03:06:24 +00:00
Tor Lillqvist
51704100d0 Fix indentation and spacing. Use INADDR_LOOPBACK instead of
2003-06-08  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c: Fix indentation and spacing. Use
	INADDR_LOOPBACK instead of inet_addr("127.0.0.1") and
	gethostbyaddr().
2003-06-08 01:38:13 +00:00
Andy Lanoix
be76dd63f9 Resolved thread deadlocks in socket ichannel code to support
* glib/giowin32.c: Resolved thread deadlocks in socket
	ichannel code to support Add-Cancel-Add watch functionality
	on windows. Also cleaned up socket error handling to not
	segfault and do the right thing.
2003-06-07 20:31:28 +00:00
Tor Lillqvist
5d48d565e3 Fix typo: Should be SOCKET_ERROR, not SO_ERROR. Noticed by Daniel
2003-02-04  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c (g_io_channel_unix_new): Fix typo: Should be
	SOCKET_ERROR, not SO_ERROR. Noticed by Daniel Kaufmann.

	Merge from stable branch:

	Fix for bug #104014, reported by Alex Shaduri:

	* glib/gspawn-win32.c (protect_argv): New function. Add
	double-quotes around argv elements that need it, and escape
	embedded double-quotes with backslash.
	(do_spawn_with_pipes) Call protect_argv().

	* glib/gspawn-win32-helper.c (WinMain): Call protect_argv().

	* glib/gspawn.c (g_spawn_async_with_pipes): Document argument
	vector vs. command line details on Win32.
	(g_spawn_command_line_sync): Improve documentation about
	backslashes in the command line on Windows.
2003-02-04 23:37:04 +00:00
Tor Lillqvist
a0821bd753 Don't claim broken pipes are unreadable. (Well, they are, but read()
2003-01-04  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c (g_io_win32_fd_get_flags_internal): Don't claim
	broken pipes are unreadable. (Well, they are, but read() handles
	it, and treats it like EOF.)
2003-01-04 05:43:06 +00:00
Tor Lillqvist
54cadf4528 Correct the comment telling what headers have the declarations of some
2003-01-02  Tor Lillqvist  <tml@iki.fi>

	* glib/gwin32.h: Correct the comment telling what headers have
	the declarations of some POSIXish functions.

	* glib/giowin32.c (g_io_win32_fd_get_flags_internal): Fix braino:
	The checks for readability/writeability were backwards.
2003-01-02 00:30:22 +00:00
Tor Lillqvist
10d5085cde Improvement based on suggestion by Thorsten Maerz:
2002-12-17  Tor Lillqvist  <tml@iki.fi>

	Improvement based on suggestion by Thorsten Maerz:

	* glib/giowin32.c (struct _GIOWin32Channel): Don't need thread_handle.

	(create_thread): We can close thread handle right away, it isn't
	used for anything.

	(read_thread, select_thread): Thus, don't close it here.

	Fix #57690, partial fix for #57689:

	* glib/giowin32.c (g_io_win32_set_flags): Don't set the GError,
	instead call g_warning().

	(g_io_win32_fd_get_flags_internal): New function, sets the
	is_readable, is_writeable and is_seekable flags based on the
	actual access modes of the underlying Win32 HANDLE, by trying
	Win32 ReadFile() and WriteFile() of zero bytes, and
	PeekNamedPipe(). Should work for disk files and pipes. For devices
	(consoles) unfortunately not.

	(g_io_win32_fd_get_flags): Don't set the
	G_IO_FLAG_IS_{READ,WRITE}ABLE flags, g_io_channel_get_flags()
	already does. Call g_io_win32_fd_get_flags_internal() to set the
	is_* flags.

	(g_io_win32_msg_get_flags, g_io_win32_sock_get_flags): Splice the
	generic g_io_win32_get_flags() into these specific functions, as
	they need to do different things. Not implemented yet, though.

	(g_io_channel_win32_new_fd_internal): New function, to avoid
	duplicate fstat() calls. Most code from g_io_channel_win32_new_fd()
	moved here. Call g_io_win32_fd_get_flags_internal() to set the
	is_* flags.

	(g_io_channel_win32_new_fd, g_io_channel_unix_new): Call
	g_io_channel_win32_new_fd_internal().

	(g_io_win32_no_seek): Remove. Don't set is_seekable for those
	channel types.
2002-12-17 04:48:03 +00:00
Tor Lillqvist
1c653e3635 glib/giowin32.c (g_io_win32_dispatch): Check buffer condition here, too.
2002-03-16  Tor Lillqvist  <tml@iki.fi>

	glib/giowin32.c (g_io_win32_dispatch): Check buffer condition
	here, too.
2002-03-15 23:34:53 +00:00
Tor Lillqvist
2c8e0c8d40 Some debugging output formatting changes. The following two changes fixes
2002-03-16  Tor Lillqvist  <tml@iki.fi>

	* glib/giowin32.c: Some debugging output formatting changes. The
	following two changes fixes a problem with buffered GIOChannels,
	noticed with the help of Owen's test program, thanks!
	(g_io_win32_prepare): Return value that takes the buffer condition
	into account, like g_io_unix_prepare() does.
	(g_io_win32_check): Ditto, like g_io_unix_check().
2002-03-15 23:01:55 +00:00
Owen Taylor
cef5d28c89 Final updates for 2.0.0
Fri Mar  8 10:20:46 2002  Owen Taylor  <otaylor@redhat.com>

        * NEWS: Final updates for 2.0.0

        * glib/gstrfuncs.c: Convert the results of strerror()
        and strsignal() to UTF-8.

        * glib/gconvert.c glib/gdir.c glib/giochannel.c glib/giounix.c
        glib/giowin32.c: Use g_strerror(), not strerror().
2002-03-08 15:50:54 +00:00
Tor Lillqvist
c7e635a922 Include <config.h> first here, too. Use g_io_channel_read_chars() instead
2002-02-19  Tor Lillqvist  <tml@iki.fi>

	* glib/gspawn-win32.c: Include <config.h> first here, too. Use
	g_io_channel_read_chars() instead of (deprecated)
	g_io_channel_read(). Set encoding to NULL for the channels used
	for the pipes from the child.

	* glib/giowin32.c (buffer_read): Do return G_IO_STATUS_EOF when
	EOF has been reached. Otherwise, with the above change to
	gspawn-win32.c, spawn-test hangs.
2002-02-19 09:08:24 +00:00
Owen Taylor
5d43b9ade4 Updated.
Fri Feb 15 10:41:51 2002  Owen Taylor  <otaylor@redhat.com>

        * NEWS: Updated.

        * configure.in: Require autoconf-2.52, run AC_SYS_LARGEFILE.
        (#71410, Sven Neumann)

        * glib/giounix.c glib/giowin32.c glib/giochannel.[ch]:
        Change offset type for g_io_channel_seek[_position] to
        gint64.
2002-02-15 16:41:54 +00:00
Tor Lillqvist
c2794647a4 Add (undefined) HAVE_C99_VSNPRINTF.
2001-12-21  Tor Lillqvist  <tml@iki.fi>

	* config.h.win32.in: Add (undefined) HAVE_C99_VSNPRINTF.

	* glibconfig.h.win32.in: Add definition of G_HAVE_GROWING_STACK.

	* tests/Makefile.am: Rename the progs_LDADD, thread_LDADD and
	module_LDADD Make macros to progs_ldadd, thread_ldadd and
	module_ldadd. Newer automakes reserve macros named *_LDADD for
	the use as LDADDs for targets it knows.

	* glib/giowin32.c: (struct _GIOWin32Watch): 'callback' wasn't used
	here, either.

2001-12-21  Tor Lillqvist  <tml@iki.fi>

	* gobject.def: Add g_signal_get_invocation_hint.
2001-12-22 08:29:06 +00:00
Hans Breuer
5981d6fe6b static correctness
2001-11-03  Hans Breuer  <hans@breuer.org>

	* glib/giowin32.c : static correctness

	* glib/gwin32.c : some more #if defined (SUBLANG_* ...
	(g_win32_get_package_installation_subdirectory) use g_build_filename
	instead of duplicating its logic

	* glib/glib.def : removed duplicates, added mising, removed
	compat cruft
2001-11-03 16:51:10 +00:00