Commit Graph

559 Commits

Author SHA1 Message Date
Owen Taylor
cbd74878d1 Remove pollfds from the context here, not when actually freeing the
Sun Dec 10 10:47:11 2000  Owen Taylor  <otaylor@redhat.com>

	* gmain.c (g_source_destroy_internal): Remove pollfds
	from the context here, not when actually freeing the
	source.

	* gmain.c (g_source_unref_internal): Free source list
	and source, call source->source_funcs->destroy().

	* giochannel.c: Unreference io_channel properly.
2000-12-10 16:02:48 +00:00
Raja R Harinath
31fc683b98 Rename from GLIB_DIVERT_BEFORE_HELP. Update to track autoconf 2.49b.
* acglib.m4 (GLIB_AC_DIVERT_BEFORE_HELP):
Rename from GLIB_DIVERT_BEFORE_HELP.
Update to track autoconf 2.49b.
* configure.in: Reflect above change.
(AC_EGREP_HEADER): Rename from really obselete AC_HEADER_EGREP.
(debug_default): Replace "if test `expr ...`" with "case".
2000-12-08 22:48:45 +00:00
Raja R Harinath
8f0a794c15 Fix typo, and fix some formatting. 2000-12-08 21:23:30 +00:00
Raja R Harinath
0b6e1350e1 Rearrange into other veriables, and include run-markup-tests.sh.
* tests/Makefile.am (TESTS): Rearrange into other veriables, and
include run-markup-tests.sh.
(TESTS_ENVIRONMENT): New.  Pass $srcdir to tests.
(noinst_PROGRAMS): Rename to ...
(check_PROGRAMS): ... this.  'automake' ensures that these are
built before running the tests.
* tests/run-markup-tests.sh: Support $srcdir != $builddir.
2000-12-08 21:04:52 +00:00
Havoc Pennington
dd087e5aaa move markup-test to noinst_PROGRAMS; it isn't a proper test, the proper
2000-12-08  Havoc Pennington  <hp@pobox.com>

* tests/Makefile.am (TESTS): move markup-test to noinst_PROGRAMS;
it isn't a proper test, the proper test would be
run-markup-tests.sh, but that can't go in tests, so we need
a manual make check rule. Didn't do that yet.
2000-12-08 15:03:12 +00:00
Raja R Harinath
dc7d6c2464 Don't put anything after an #endif. Likewise.
* gmain.h: Don't put anything after an #endif.
* gmain.c: Likewise.
2000-12-08 03:39:47 +00:00
Havoc Pennington
e5c1f207c9 add g_strdupv test
2000-12-06  Havoc Pennington  <hp@pobox.com>

* tests/strfunc-test.c (main): add g_strdupv test

* gstrfuncs.c (g_strdupv): Add a function to copy
an array of strings
2000-12-07 04:48:37 +00:00
Owen Taylor
e2fd4e2bd0 Major change in API for creating sources to handle multiple main loops
Tue Dec  5 12:23:04 2000  Owen Taylor  <otaylor@redhat.com>

        * gmain.[hc]: Major change in API for creating sources
	to handle multiple main loops (GMainContext *).

	GSources are now exposed as GSource * and implemented
	with structure derivation.

	* giochannel.[ch]: Changed vtable for GIOChannel to correspond
	to the new mainloop API, add g_io_channel_create_watch().

	* gtypes.h: Move GTimeVal here.

	* gthread.h: Remove gmain.h include to avoid circularity.

        * giounix.c: Update for new GMain API.

	* giowin32.c: Update for new GMain API. (No check for
	proper compilation or working.)

	* timeloop.c timeloop-basic.c: A benchmarking program for
	the main loop comparing the main loop against a
	hand-written (timeloop-basic.c) variant.

	* tests/mainloop-test.c: New torture test of mainloop.

	* docs/Changes-2.0.txt: Started. Added text about
	changes to GMain.

	* gmain.c (g_main_add_poll_unlocked): Initial fd->revents
	to zero. (#8482, Benjamin Kahn)
2000-12-05 20:45:33 +00:00
Tor Lillqvist
74987b2cf0 Include make.msc from GLib's build subdir.
2000-12-01  Tor Lillqvist  <tml@iki.fi>

	* {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.

	* makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.

	* glib.def: Update correspondingly.
2000-12-01 15:11:54 +00:00
Havoc Pennington
430ae18e5b Provide G_CONST_RETURN which is 'const' by default, and nothing when
2000-11-21  Havoc Pennington  <hp@pobox.com>

* gmacros.h: Provide G_CONST_RETURN which is 'const' by default,
and nothing when G_DISABLE_CONST_RETURNS is defined.
2000-12-01 05:42:51 +00:00
Havoc Pennington
5495142560 Forgot gunibreak.c, mistake in ChangeLog 2000-11-29 23:49:44 +00:00
Havoc Pennington
7fce6d3abc s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/
2000-11-29  Havoc Pennington  <hp@redhat.com>

	* gunidecomp.c (COMBINING_CLASS): s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/

	* gunichartables.h: Update for data in Unicode 3.0.1,
	and include tables for line break properties

	* gunidecomp.h: Ditto

	* gunicode.h (GUnicodeBreakType): Enum for line break properties
	(g_unichar_break_type): Get the break property for a char

	* gunibreak.h: Autogenerated line break property tables

	* gunibreak.c (g_unichar_break_type): added

	* Makefile.am (EXTRA_DIST): dist gen-unicode-tables.pl

	* Makefile.am (libglib_1_3_la_SOURCES): Add gunibreak.h, gunibreak.c

	* gen-unicode-tables.pl: Include the script to update the unicode
	char tables
2000-11-29 23:38:24 +00:00
Elliot Lee
790a7bd3be Fix warnings.
* gmarkup.c: Fix warnings.

* guniprop.c, gunidecomp.c: Make warnings go away by using
GPOINTER_TO_INT() instead of (int).

* gcompletion.[ch]: Add g_completion_set_compare(),
to allow (for example) using case-insensitive completion.

* gobject/gsignal.c: Fix warnings about possible use of uninitialized
variables, and fix logic that would leave 'node' unset in cases
that it might be used in.

* gobject/glib-genmarshal.c: Fix warning about printf format.
2000-11-28 23:44:21 +00:00
Tor Lillqvist
55c7329d51 Patches by Hans Breuer:
2000-11-28  Tor Lillqvist  <tml@iki.fi>

	Patches by Hans Breuer:

	* gspawn-win32.c: Move the code for gspawn-win32-helper to its own
	file.

	* makefile.{mingw,msc}.in: Change accordingly.

	* gspawn-win32-helper.c: New file.

	* Makefile.am (EXTRA_DIST): Add it.

	* gmarkup.c (find_current_text_end): Fix assertion not to check an
	uninitialised variable.

	* gboxed.c: Include <string.h> for memset ().
2000-11-28 20:04:08 +00:00
Sebastian Wilhelmi
fe0f325777 Revamped errorcheck mutexes and added errorcheck cond_wait() and
2000-11-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gthread-impl.c: Revamped errorcheck mutexes and added errorcheck
	cond_wait() and cond_timed_wait() funtions. This makes he whole
	thing work. Now we only show the location of the locking/unlocking
	for -DG_ERRORCHECK_MUTEXES and not the name of the mutex.

	* gthread.c: Set the thread data before locking the mutex, because
	the locking call might use g_thread_self ().

	* gthread.h: Do only show the location of the locking/unlocking
	for -DG_ERRORCHECK_MUTEXES and not the name of the mutex. Add the
	errorcheck capability for g_cond_wait and g_cond_timed_wait as
	well.
2000-11-28 12:56:57 +00:00
Havoc Pennington
dd58473e07 Add void in empty function arg list
2000-11-27  Havoc Pennington  <hp@redhat.com>

        * gthread.h: Add void in empty function arg list
2000-11-28 01:03:45 +00:00
Tor Lillqvist
dcce67b022 Add gqsort.
2000-11-22  Tor Lillqvist  <tml@iki.fi>

	* makefile.{mingw,msc}.in: Add gqsort.

	* glib.def: Update.

	* gobject.def: Update.
2000-11-26 16:28:01 +00:00
Sebastian Wilhelmi
a3036a5bd2 Add a surrogate for thread priorities using PID niceness for systems with
2000-11-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in: Add a surrogate for thread priorities using PID
	niceness for systems with no thread priorities and different PIDs
	for threads of the same process (most notably: Linux). Define
	G_THREAD_USE_PID_SURROGATE in that case, as used by
	gthread-posix.c. Also make the system thread bigger by
	sizeof (long) to contain the thread's PID.

	* gfileutils.c: Include stdlib.h for mkstemp prototype.

	* gthread.c: Add priority range checks to the affected functions.

	* gthreadpool.c: Remove unused variable.

	* gthread-impl.c, gthread-posix.c, gthread-solaris.c: Removed
	g_thread_map_priority function in favour of the
	g_thread_priority_map array.  Initialize the array with
	PRIORITY_{...}_VALUE, if available and interpolate beetween the
	bounds if .._NORMAL_.. and .._HIGH_.. are not available.

	* gthread-posix.c: If we should use the PID niceness as a
	surrogate for thread priorities (G_THREAD_USE_PID_SURROGATE is
	defined), then disable normal priority handling and use PIDs and
	setpriority() instead. Depends on the thread to write its PID into
	the place after the thread id right after thread creation.
2000-11-21 15:27:44 +00:00
Jonathan Blandford
2645aaf59c Patch from David Benson <daveb@idealab.com> to add user_data support to
Mon Nov 20 18:55:17 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtree.[hc]: Patch from David Benson <daveb@idealab.com> to add
	user_data support to gtree functions.

Mon Nov 13 18:35:52 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtypes.h (GCompareFuncData): new func type to let you use user
	data when comparing nodes.

	* gslist.c (g_list_sort_with_data): new function to sort with
	user_data.

	* glist.c (g_list_sort_with_data): new function to sort with
	user_data.

	* garray.[ch]: Added convenience functions to sort arrays.
2000-11-20 23:59:32 +00:00
Havoc Pennington
399ad0b8b0 Use a switch here, maybe helps the compiler optimize things. Also, ' ' is
2000-11-16  Havoc Pennington  <hp@redhat.com>

	* guniprop.c (g_unichar_isspace): Use a switch here, maybe helps
	the compiler optimize things. Also, ' ' is a SPACE_SEPARATOR,
	so don't special case it.
2000-11-20 15:14:14 +00:00
Tor Lillqvist
b24f1d179e Add g_trash_stack entry points.
2000-11-17  Tor Lillqvist  <tml@iki.fi>

	* glib.def: Add g_trash_stack entry points.
2000-11-19 19:08:46 +00:00
Owen Taylor
cc7ce9f9d7 Released 1.3.2
Fri Nov 17 15:43:00 2000  Owen Taylor  <otaylor@redhat.com>

        * Released 1.3.2

	* NEWS: Update.

	* tests/Makefile.am (dist-hook): Add code to distribute
	markup test files.
2000-11-17 20:44:24 +00:00
Sebastian Wilhelmi
b9731eb861 Check for the sched.h header and include it on gthread/gthread-posix.c if
2000-11-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in: Check for the sched.h header and include it on
	gthread/gthread-posix.c if available.

	* gthread-posix.c: Include <sched.h> if available.

	* configure.in: Add -D_POSIX4_DRAFT_SOURCE to
	GTHREAD_COMPILE_IMPL_DEFINES. Also add -D_POSIX4A_DRAFT10_SOURCE
	to G_THREAD_CFLAGS. Really deploy GTHREAD_COMPILE_IMPL_DEFINES,
	when searching for thread libs. Look for sched_* functions in
	-lrte as well. All of that is necessary on DG/UX.

	* configure.in: Use AC_TRY_COMPILE instead of AC_EGREP_HEADERS in
	various places to make it work more reliable, to make it accept
	macros instead of functions etc.

	* configure.in: Replace some NULL's for checks with 0 to make it
	work without stdio.h everywhere.

	* configure.in, gutils.c: changed the test for getpwuid_r to first
	test for a posix version and then for a non-posix version. No code
	change in gutils.c. Again this change deals better with getpwuid_r
	being a macro and not a function. Most of the above with kind help
	from Tethys <tet@isengard.europe.dg.com>. This fixes Bug #13403.
2000-11-15 17:48:43 +00:00
Tor Lillqvist
835b593a6f Make #endif comment match #ifdef.
2000-11-14  Tor Lillqvist  <tml@iki.fi>

	* gwin32.h: Make #endif comment match #ifdef.
2000-11-14 21:40:28 +00:00
Owen Taylor
b1376c12d9 Up version to 1.3.2
Mon Nov 13 14:00:20 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Up version to 1.3.2

	* gconvert.h (enum GConvertError): Remove trailing ,

	* gfileutils.c (g_file_open_tmp): Fix comment to
	properly describe return value.
2000-11-13 19:01:28 +00:00
Tor Lillqvist
50c62ba8a9 Add USE_LIBICONV.
2000-11-13  Tor Lillqvist  <tml@iki.fi>

	* config.h.win32.in: Add USE_LIBICONV.

	* gconvert.c: Check G_OS_WIN32 only after including glib.h.

	* glib.def: Update.
2000-11-13 18:03:57 +00:00
Sebastian Wilhelmi
82ab77c8f7 Made recursive mutexes also work when the thread system is not (yet)
2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gthread.c (g_static_rec_mutex_*): Made recursive mutexes also
	work when the thread system is not (yet) initialized.
2000-11-13 12:50:16 +00:00
Owen Taylor
292152dae2 Create wrapper functions for iconv() so that we can transparently use the
Sun Nov 12 18:34:32 2000  Owen Taylor  <otaylor@redhat.com>

	* gconvert.[ch]: Create wrapper functions for iconv()
	so that we can transparently use the native iconv,
	libiconv, or (in the future) a mini-iconv included
	with glib.

	* glib-config-2.0.in glib-2.0.pc.in: Include @ICONV_LIBS@

	* INSTALL: Added note about libiconv.

	* configure.in: Add checks for libiconv from pango. If
	EILSEQ is not defined in errno.h add define for it into
	glibconfig.h so g_iconv can use it. (Note, recompiling
	from a system without EILSEQ to a system with EILSEQ
	will break binary compatibility)
2000-11-12 23:44:28 +00:00
Robert Brady
8bda01029f Remove g_filename_{to,from}_utf8
2000-11-12  Robert Brady  <robert@suse.co.uk>

	* gstrfuncs.c, gstrfuncs.h: Remove g_filename_{to,from}_utf8

	* gconvert.c, gconvert.h: Add g_filename_{to,from}_utf8 and
	g_locale_{to.from}_utf8.  The locale_ variant honours
	nl_langinfo(CODESET), the filename_ variant uses UTF-8 unless
	asked otherwise.

	(g_convert): Add G_CONVERT_ERROR_PARTIAL_INPUT error, if bytesread
	!= length and no bytesread pointer passed.
2000-11-12 21:23:55 +00:00
Owen Taylor
91d5e23f5f template is a reserved word in C++ s/template/tmpl/.
Sun Nov 12 15:29:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gfileutils.[ch]: template is a reserved word in
	C++ s/template/tmpl/.
2000-11-12 20:38:19 +00:00
Havoc Pennington
96b9935a7c Handle a long stream of bytes containing no UTF-8 character starts
2000-11-11  Havoc Pennington  <hp@pobox.com>

* gmarkup.c (g_markup_parse_context_parse): Handle a long stream
of bytes containing no UTF-8 character starts
2000-11-11 17:09:15 +00:00
Tor Lillqvist
ccc9329e1c Add missing entry points.
2000-11-11  Tor Lillqvist  <tml@iki.fi>

	* glib.def: Add missing entry points.

	* gobject.def: Add missing functions.
2000-11-11 15:03:10 +00:00
Tor Lillqvist
4f76917c6a Improve chance to generate unique names with less effort a bit.
2000-11-11  Tor Lillqvist  <tml@iki.fi>

	* gfileutils.c (g_mkstemp): Improve chance to generate unique
	names with less effort a bit.

	* gfileutils.h: Add g_file_open_tmp() declaration.

	* testglib.c: Include <io.h> on Win32.

	* makefile.mingw.in: Correct the way to invoke sub-makes.

2000-11-11  Tor Lillqvist  <tml@iki.fi>

	* gtypemodule.c: Include stdlib.h for exit().

	* makefile.{mingw,msc}.in (gobject_OBJECTS): Add gtypemodule.

	* gobject.def: Add new functions.
2000-11-11 13:46:15 +00:00
Owen Taylor
c36151fcdc Add gtypemodule.h
Sun Nov  5 13:20:54 2000  Owen Taylor  <otaylor@redhat.com>

	* glib-object.h: Add gtypemodule.h
2000-11-11 00:04:33 +00:00
Tor Lillqvist
997215e747 New function, suggested by Havoc earlier this month. (g_mkstemp): Use only
2000-11-11  Tor Lillqvist  <tml@iki.fi>

	* gfileutils.c (g_file_open_tmp): New function, suggested by Havoc
	earlier this month.
	(g_mkstemp): Use only one case for letters in temp file name, as
	this will be used on systems with case-insensitive file systems.

	* testglib.c (main): Test g_mkstemp() and g_file_open_tmp().
2000-11-10 23:43:33 +00:00
Sebastian Wilhelmi
c46b9f34e4 Don't take threads with other priorities into account as changing the
2000-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gthreadpool.c: Don't take threads with other priorities into
	account as changing the priority is highly unportable. (Actually
	using it at all already is unportable, but even sometimes where
	that works, changing priority is not possible).
2000-11-09 12:28:12 +00:00
Havoc Pennington
14c4da8cdd rename G_MARKUP_FOO to G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
2000-11-05  Havoc Pennington  <hp@pobox.com>

* gmarkup.h: rename G_MARKUP_FOO to
G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG

* gmarkup.c: don't start doc comments with "Returns"

2000-11-05  Havoc Pennington  <hp@pobox.com>

* glib/tmpl/markup.sgml: Write docs
2000-11-05 18:38:08 +00:00
Havoc Pennington
194ae56882 inline docs (unescape_text): properly check strtoul for failure.
2000-11-05  Havoc Pennington  <hp@pobox.com>

* gmarkup.c: inline docs
(unescape_text): properly check strtoul for failure.

* gerror.c (g_propagate_error): Free the src error if the dest
location is NULL - I'm pretty sure that's what this function was
supposed to do.
2000-11-05 18:09:16 +00:00
Havoc Pennington
d4ff0ef999 Free the src error if the dest location is NULL - I'm pretty sure that's
2000-11-05  Havoc Pennington  <hp@pobox.com>

* gerror.c (g_propagate_error): Free the src error if the dest
location is NULL - I'm pretty sure that's what this function was
supposed to do.

2000-11-05  Havoc Pennington  <hp@pobox.com>

* glib/tmpl/error_reporting.sgml: fixes
2000-11-05 17:02:37 +00:00
Havoc Pennington
110c6cbac8 Added
2000-11-05  Havoc Pennington  <hp@pobox.com>

        * glib/tmpl/spawn.sgml, glib/tmpl/markup.sgml,
	glib/tmpl/fileutils.sgml: Added

	* glib/Makefile.am: Add new files

	* glib/glib-sections.txt: Add stuff from -unused

2000-11-05  Havoc Pennington  <hp@pobox.com>

* gutils.c (g_find_program_in_path): cleanup docs, sync param
names to those in the header

* gfileutils.c (g_mkstemp): clean up docs

* gshell.h: sync param names with param names in .c file

* gfileutils.h (enum GFileTest): remove trailing comma from last
member, confuses gtk-doc

* gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
convention
2000-11-05 16:38:16 +00:00
Sebastian Wilhelmi
91b9b2dd12 Added documentation for asynchronous queues.
2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/tmpl/async_queues.sgml, glib/glib-sections.txt: Added
	documentation for asynchronous queues.

	* gasyncqueue.c: Added inline documentation for asyncronous
	queues.
2000-11-02 14:54:52 +00:00
Sebastian Wilhelmi
9c574a6a9a Changed unportable __FUNCTION__ to the verbatim function name.
2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gspawn.c: Changed unportable __FUNCTION__ to the verbatim
	function name.
2000-11-02 12:31:10 +00:00
Sebastian Wilhelmi
6c41cc9ce7 Include sys/select.h (some platforms need it for select).
2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gspawn.c: Include sys/select.h (some platforms need it for
	select).
2000-11-02 11:38:10 +00:00
Tor Lillqvist
dd3f4d6bb3 gutils.c gutils.h gfileutils.c Actually, g_mkstemp() is better suited in
2000-10-31  Tor Lillqvist  <tml@iki.fi>

	* gutils.c
	* gutils.h
	* gfileutils.c
	* gfileutils.h: Actually, g_mkstemp() is better suited in gfileutils.
2000-10-30 22:06:22 +00:00
Tor Lillqvist
6acee58bdf Check for mkstemp.
2000-10-30  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Check for mkstemp.

	* gutils.c (g_mkstemp): New function. If HAVE_MKSTEMP, just call
	it, otherwise use code lifted from glibc.

	* gutils.h: Declare it.

	* glib.def: Here, too.
2000-10-30 21:55:21 +00:00
Sebastian Wilhelmi
267b681370 Introduced new function type GEqualFunc to return TRUE for equal params.
2000-10-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gcache.h, gcache.c, ghash.h, ghash.c, grel.c, grel.h, gtypes.h:
	Introduced new function type GEqualFunc to return TRUE for equal
	params. This is now used instead of GCompareFunc (which should
	work akin to strcmp) here. This kind of fixes Bug #14412. Note
	that technically GCompareFunc and GEqualFunc are still the same
	types, as gint == gboolean.

	* ghash.h, gutils.c: g_int_equal and g_direct_equal now return
	gboolean to be really become GEqualFunc.

	* gscanner.c, testglib.c, tests/hash-test.c: Some tiny changes to
	follow the above change.
2000-10-30 14:34:52 +00:00
Tor Lillqvist
09683edc5c Add gmarkup.
2000-10-27  Tor Lillqvist  <tml@iki.fi>

	* makefile.{mingw,msc}.in (glib_OBJECTS): Add gmarkup.

	* glib.def: Add missing functions.

	* tests/makefile.{mingw,msc}.in (TESTS): Add markup-test.
2000-10-27 20:43:42 +00:00
Havoc Pennington
32ef70d4b2 New module to parse a simple markup language
2000-10-24  Havoc Pennington  <hp@pobox.com>

        * gmarkup.h, gmarkup.c: New module to parse a simple
	markup language

	* Makefile.am: add gmarkup.h, gmarkup.c

	* tests/Makefile.am: add markup-test

	* gstring.h (g_string_new_len): new function to create a string
	with a length
	(g_string_new): avoid a gratuitous realloc
2000-10-27 02:46:04 +00:00
Tor Lillqvist
7ea09e4589 Cosmetics.
2000-10-26  Tor Lillqvist  <tml@iki.fi>

	* makefile.{mingw,msc}.in: Cosmetics.
2000-10-26 17:53:58 +00:00
Sebastian Wilhelmi
6f83e76ea8 When the string is ended by a delimiter, return an extra empty string just
2000-10-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gstrfuncs.c (g_strsplit): When the string is ended by a
	delimiter, return an extra empty string just like for a delimiter
	at the start of the string. This makes the function behave more
	consitent and also fixes Bug #15026.
2000-10-26 13:00:18 +00:00