Commit Graph

17 Commits

Author SHA1 Message Date
Owen Taylor
d4e0ae748a Fix read past end of the string. (#50404, fix from Jonas Borgström)
Wed May  2 11:10:22 2001  Owen Taylor  <otaylor@redhat.com>

	* gutf8.c (g_utf8_to_ucs4_fast): Fix read past end of the string.
	(#50404, fix from Jonas Borgström)
2001-05-02 15:19:55 +00:00
Havoc Pennington
4eab875811 docs
2001-04-16  Havoc Pennington  <hp@redhat.com>

        * gqsort.c: docs

        * gfileutils.c: docs

        * gwin32.c: docs fixes

        * gconvert.c: docs

        * guniprop.c: docs

        * gutf8.c: docs
2001-04-16 20:05:25 +00:00
Havoc Pennington
767800fcb3 rewrite, based on bug #52328 from Anders
2001-03-20  Havoc Pennington  <hp@redhat.com>

	* gutf8.c (g_utf8_strlen): rewrite, based on bug #52328 from
	Anders
2001-03-20 21:30:40 +00:00
Havoc Pennington
fad8693b76 added this function
2001-03-19  Havoc Pennington  <hp@redhat.com>

	* gutf8.c (g_unichar_validate): added this function
2001-03-20 00:55:44 +00:00
Tor Lillqvist
754d8ddad8 Cygwin support contributed by Stefan Ondrejicka <ondrej@idata.sk>.
2001-02-21  Tor Lillqvist  <tml@iki.fi>

	Cygwin support contributed by Stefan Ondrejicka
	<ondrej@idata.sk>. Hopefully I got it all in while simultaneously
	adding support for auto*/libtool for mingw.

	* Makefile.am: Changes for auto* support on Cygwin and Win32. Do
	still distribute the hand-written makefiles and *.win32.in files,
	though. Use GIO, GSPAWN and PLATFORMDEP macros set by configure.
	Use -no-undefined. Pass -export-symbols glib.def to libtool.

	* configure.in: Define G_PLATFORM_WIN32 on both pure Win32 (mingw)
	and Cygwin. Add AC_CYGWIN, AC_EXEEXT and AC_LIBTOOL_WIN32_DLL
	calls for Cygwin and mingw support.  Check for %I64u guint64
	format (in MS C library). Set G_MODULE_IMPL on mingw and
	Cygwin. Use ac_object and ac_exeext.  Set GIO, GSPAWN, PLATFORMDEP
	and G_LIBS_EXTRA. Compile timeloop only on Unix. Define OS_WIN32
	automake conditional on Win32.

	* glib.h: Include gwin32.h also on Cygwin.

	* gfileutils.c (get_contents_posix): Use O_BINARY (defined as 0 on
	Unix) for Cygwin's sake.

	* gtimer.c (GETTIME): Reduce #ifdefs, use a macro GETTIME().

	* gconvert.c
	* gthread.c
	* gutf8.c
	* gutils.c: For code needed both on Cygwin and native Win32,
	test for G_PLATFORM_WIN32.

	* gmarkup.h: Use G_BEGIN_DECLS and G_END_DECLS.

	* gtypes.h: Refine GLIB_VAR definition. Also check for DLL_EXPORT
	in case compiling a static library on Win32 or Cygwin.

	* gwin32.c: No <direct.h> on Cygwin. No need for ftruncate() or
	dirent emulation on Cygwin.
	(get_package_directory_from_module) Convert return value from
	GetModuleFileName() to POSIX path on Cygwin.

	* tests/Makefile.am (progs_LDADD): Link with libglib, libgthread
	and libgmodule as appropriate. Use -no-undefined.

	* gbacktrace.c: Move #ifdefs around a bit on Win32.

	* gshell.c (unquote_string_inplace): Make static.

	* testglib.c: Make some vars static. Add Cygwin path tests.
2001-03-09 21:31:21 +00:00
Tor Lillqvist
8a0df0a71c Socket support rewritten. It was utterly broken, and untested in fact. We
2001-01-25  Tor Lillqvist  <tml@iki.fi>

	* giowin32.c: Socket support rewritten. It was utterly broken, and
	untested in fact. We still do use a thread for each socket being
	watched, but instead of blocking in recv() (which of course was
	plain stupid for sockets being liste()ed on), we block in
	select(). The read method for sockets calls recv(). It is now
	possible for the application to call accept(), recv() or send() in
	the callback, just like on Unix. Tested with code kindly provided
	by Andrew Lanoix.

	Rename g_io_channel_win32_new_stream_socket() to
	g_io_channel_win32_new_socket() as it isn't restricted to stream
	sockets.

	* gmain.c (g_poll): Related changes in the Win32 version of
	g_poll(). When polling for messages, always do a PeekMessage()
	first. We used to miss messages if several were posted between
	calls to g_poll().

	* giochannel.h: Improve Win32-related comments.

	* gutf8.c: (Win32) Include <stdio.h> for sprintf.

	* tests/gio-test.c: (Win32) Add tests for polling for Windows
	messages.

	* tests/makefile.mingw.in: Remove superfluous compilation command
	line.
2001-01-25 21:16:46 +00:00
Owen Taylor
b8796462fb Add gettext support.
Mon Jan 15 21:12:49 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in acconfig.h glibintl.h gutils.c
	po/{Makefile.in.in,POTFILES.in,po2tbl.in}: Add gettext
	support.

	* glib-gettext.m4 acinclude.m4: Clean up the GTK+ gettext macros
	some more and put them in this file, though they also need
	to be included in acinclude.m4 due to the brokeness of
	aclocal.

	* gspawn.c gspawn-win32.c gutf8.c gconvert.c gfileutils.c
	gshell.c: Remove dummy _() #defines, include glibintl.m4.
2001-01-16 02:24:24 +00:00
Owen Taylor
956f00ed96 move $enable_debug down below checks for GCC to avoid setting CFLAGS
Fri Jan  5 11:25:42 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in (PACKAGE): move $enable_debug down below
	checks for GCC to avoid setting CFLAGS prematurely,
	change checks to avoid adding -g twice.

	* gutf8.c (g_ucs4_to_utf8): Support len < 0 to mean
	0 termination.

	* gutf8.c (g_utf8_to_ucs4): Terminate result with 0.

	* tests/mainloop-test.c (main): Fix uses of
	g_main_loop_destroy().

	* tests/unicode-encoding.c tests/Makefile.am tests/utf8.txt:
	Tests for unicode-conversion code.

	* gconvert.c (g_convert, g_convert_with_fallback): work around
	a couple of GNU libc bugs.

	* gconvert.[ch] (g_{locale,filename}_{to,from}_utf8): Standardize
	arguments to match g_convert(). Document.

	* gunicode.[ch]:
	  - Implement conversion functions to and from UTF-16
	  - Standardize unicode conversion functions on prototype like
	    g_convert.
	  - Add a lot of error checking to unicode conversion functions.

	* gunicode.[ch] (g_utf8_to_ucs4_fast): Add fast, non-checking
	variant of g_utf8_to_ucs4.

	* gutf8.c (g_utf8_validate):
	 - add g_return_if_fail (str != NULL).
	 - add checks for overlong strings, non-valid Unicode characters (>= 110000)
	   and single surrogates.
2001-01-05 21:22:47 +00:00
Tor Lillqvist
4f9e04c1d7 Use GetACP to get the current ANSI codepage.
2000-12-17  Tor Lillqvist  <tml@iki.fi>

	* gutf8.c (g_utf8_get_charset_internal): (Win32) Use GetACP to get
	the current ANSI codepage.

	* gunicode.h: Add comment that the static string g_get_charset
	sets the parameter to point to should be copied in case the
	charset might be changed later in the program.
2000-12-17 18:43:57 +00:00
Havoc Pennington
b0baf3db03 make static
2000-12-13  Havoc Pennington  <hp@redhat.com>

	* gconvert.c (open_converter): make static

	* gutf8.c (g_utf8_validate): Simplify logic a bit, maybe
	speeding it up - now we just return FALSE if we had to bail out
	for any reason before getting to the end of the string, as defined
	by a nul byte if len was -1, defined by the len otherwise. This
	also fixes a bug where nul bytes were not treated as invalid
	when the length was specified.
2000-12-13 23:54:51 +00:00
Owen Taylor
ddbb2ea440 Implement g_ucs4_to_utf8 which was in
Mon Sep 18 10:58:21 2000  Owen Taylor  <otaylor@redhat.com>

	* gutf8.c: Implement g_ucs4_to_utf8 which was in
2000-09-18 14:55:24 +00:00
Havoc Pennington
49c937fcbb Add this function.
2000-09-10  Havoc Pennington  <hp@redhat.com>

	* gutf8.c (g_utf8_validate): Add this function.
2000-09-11 00:09:31 +00:00
Owen Taylor
da765af2bc Some inline docs fixes.
Wed Sep  6 10:28:34 2000  Owen Taylor  <otaylor@redhat.com>

	* guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
2000-09-06 14:42:13 +00:00
Owen Taylor
37e7118821 Fix stray character
Sun Jul 30 16:54:13 2000  Owen Taylor  <otaylor@redhat.com>

        * gunicode.h: Fix stray character

	* gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
	which case we just compute the length.
2000-07-31 18:52:11 +00:00
Tim Janik
c9bd7542e1 applied patch from Andreas Persenius <ndap@swipnet.se> that updates the
Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>

        * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
        updates the license headers to the GNU Lesser General Public License,
        as well as updating the copyright year to 2000.
2000-07-26 11:02:02 +00:00
Owen Taylor
9608683328 Fix up to correspond to configure.in checks.
Mon Jul  3 17:58:02 2000  Owen Taylor  <otaylor@redhat.com>

	* gutf8.c (g_utf8_get_charset_internal): Fix up
	to correspond to configure.in checks.
2000-07-03 22:01:58 +00:00
Owen Taylor
0891c64816 Initial pass at adding unicode support functions. A few things still need
Wed Jun 21 12:09:03 2000  Owen Taylor  <otaylor@redhat.com>

	* gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
	Makefile.am glib.h: Initial pass at adding unicode support
	functions. A few things still need to be implemented, a bit
	of cleanup needs to be done, tests need to be added, and
	the docs need to be finished, but this should allow replacing
	most or all use of libunicode.
2000-06-21 16:11:21 +00:00