Commit Graph

116 Commits

Author SHA1 Message Date
Matthias Clasen
09b1a23fef Warn and don't crash when meeting a trailing \\. (#301373, Benjamin Otte)
2005-04-28  Matthias Clasen  <mclasen@redhat.com>

	* glib/gstrfuncs.c (g_strcompress): Warn and don't crash
	when meeting a trailing \\.  (#301373, Benjamin Otte)
2005-04-28 20:47:51 +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
Matthias Clasen
6b69bf8866 Add a testcase for the previous fix.
2004-11-25  Matthias Clasen  <mclasen@redhat.com>

	* tests/strtod-test.c (main): Add a testcase for the previous fix.

	* glib/gstrfuncs.c (g_ascii_strtod): Make it work again for floats
	starting with a decimal point, like .75  (#156421, Hans Breuer)
2004-11-26 04:40:41 +00:00
Matthias Clasen
c92fb33b42 Handle numbers like 1e1, nan, -infinity. Also try harder to preserve
2004-11-04  Matthias Clasen  <mclasen@redhat.com>

	* glib/gstrfuncs.c (g_ascii_strtod): Handle numbers like
	1e1, nan, -infinity. Also try harder to preserve errno.
	(#156421, Morten Welinder)

	* tests/strtod-test.c: Add testcases.
2004-11-05 03:21:24 +00:00
Manish Singh
e24b2f8cb5 Make it take a guint for number of characters, instead of a gsize.
Thu Sep 16 18:15:32 2004  Manish Singh  <yosh@gimp.org>

        * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
        of characters, instead of a gsize. Technically this is incorrect,
        but this makes it match the prototype, and this is a deprecated
        function anyway.
2004-09-17 01:14:10 +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
Matthias Clasen
6ec4724399 Add a function to calculate the length of a NULL-terminated string array.
Thu Sep  9 00:10:40 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/gstrfuncs.h:
	* glib/gstrfuncs.c (g_strv_length): Add a function to
	calculate the length of a NULL-terminated string
	array.  (#150455, Tim-Philipp Müller)

	* tests/strfunc-test.c (main): Add a test for g_strv_length().
2004-09-09 04:12:19 +00:00
Matthias Clasen
45e1212b68 s/g_strsplit/g_strsplit_set/ as well.
Tue Jul 27 02:01:31 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
	as well.
2004-07-27 06:02:15 +00:00
Soeren Sandmann
653c662f0f s/g_strtokenize/g_strsplit_set/ in docs.
Sat Jul 24 17:50:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* glib/gstrfuncs.c (g_strsplit_set):
	s/g_strtokenize/g_strsplit_set/ in docs.
2004-07-24 15:51:59 +00:00
Matthias Clasen
d7af9f1a48 Fix problems when a locale-specific decimal separator directly follows a
2004-04-22  Matthias Clasen  <mclasen@redhat.com>

	* glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
	locale-specific decimal separator directly follows a
	number.  (#138424, Nickolay V. Shmyrev)

	* tests/strtod-test.c (main): Add some more testcases.
2004-04-22 15:51:16 +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
Matthias Clasen
78adb5c69a Don't modify errno. (#116617, Balazs Scheidler)
Fri Feb 27 00:46:29 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/gstrfuncs.c (g_strerror): Don't modify errno.  (#116617,
	Balazs Scheidler)
2004-02-26 23:43:45 +00:00
Matthias Clasen
326c025205 New function, a cross between g_strsplit() and strtok(). (#88329, Soeren
Wed Jan 28 01:39:21 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/gstrfuncs.h:
	* glib/gstrfuncs.c (g_strsplit_set): New function, a cross
	between g_strsplit() and strtok().  (#88329, Soeren Sandmann)

	* tests/strfunc-test.c (main): Add g_strsplit_set() tests.
2004-01-28 00:37:46 +00:00
Tim Janik
5d49a7caf7 handle NULL arguments gracefully.
Thu Nov 27 17:04:08 2003  Tim Janik  <timj@gtk.org>

        * glib/gstrfuncs.c (g_strconcat): handle NULL arguments
        gracefully.

        * glib/gmacros.h: defined G_STRFUNC, which (pretty) prints the
        current function (since G_STRLOC and G_GNUC_*FUNCTION became
        unusable with gcc-3.0).
2003-11-27 17:08:58 +00:00
Roozbeh Pournader
6e3b71aec3 Fixed a bad pointer comparison in g_ascii_strtod that came up in fa_IR
Wed Nov 26 16:45:16 2003  Roozbeh Pournader  <roozbeh@sharif.edu>

        * glib/gstrfuncs.c: Fixed a bad pointer comparison in
        g_ascii_strtod that came up in fa_IR locale (#126640, Behdad
        Esfahbod).

        * tests/strtod-test.c: Fixed the tests to catch the above.
2003-11-26 13:22:42 +00:00
Matthias Clasen
2807b4e6eb New headers defining common gettext-support macros.
Wed Nov  5 22:05:19 2003  Matthias Clasen  <maclas@gmx.de>

	* glib/gi18n-lib.h:
	* glib/gi18n.h: New headers defining common gettext-support
	macros.

	* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
	and gi18n-lib.h.

	* glib/gstrfuncs.h:
	* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
	the implementation of Q_().
2003-11-05 21:07:47 +00:00
Matthias Clasen
8940b82eb4 Move g_strfreev() docs inline.
2003-07-02  Matthias Clasen  <maclas@gmx.de>

	* glib/tmpl/string_utils.sgml: Move g_strfreev() docs inline.
2003-07-01 22:15:54 +00:00
Matthias Clasen
27b3b2c681 Synchronize argument names with headers and docs. (g_vasprintf): An
2003-06-06  Matthias Clasen  <maclas@gmx.de>

	* glib/gprintf.[ch]: Synchronize argument names with headers and docs.
	(g_vasprintf): An implementation of vasprintf(), code was lifted
	from g_strdup_vprintf().  (#112365)

	* glib/gstrfuncs.c (g_strdup_vprintf): Just use g_vasprintf().
2003-06-05 22:47:42 +00:00
Owen Taylor
5baeb21e11 glib/gstrfuncs.c (g_ascii_strncasecmp) Use TOLOWER() macro instead of
Fri May 30 19:23:47 2003  Owen Taylor  <otaylor@redhat.com>

        * glib/gstrfuncs.c (g_ascii_strncasecmp)
        * glib/gstrfuncs.c (g_ascii_strcasecmp): Use TOLOWER()
        macro instead of g_ascii_tolower() (#107138)
2003-05-30 23:28:34 +00:00
Matthias Clasen
c868c58694 Use memcpy instead of strcpy. (#106988, Christian Biere)
2003-05-27  Matthias Clasen  <maclas@gmx.de>

	* glib/gstrfuncs.c (g_strdup): Use memcpy instead of
	strcpy. (#106988, Christian Biere)
2003-05-27 21:30:08 +00:00
Matthias Clasen
8e80b63b1a Some doc fixes. (#111805)
2003-05-05  Matthias Clasen  <maclas@gmx.de>

	* glib/gstrfuncs.c (g_ascii_dtostr):
	(g_ascii_formatd):
	(g_ascii_strtod): Some doc fixes.  (#111805)
2003-05-05 18:26:38 +00:00
Matthias Clasen
6f98877728 Use g_strndup, not g_strdup, since we know the length in advance.
2003-02-26  Matthias Clasen  <maclas@gmx.de>

	* glib/gstrfuncs.c (g_strdup_vprintf): Use g_strndup, not
	g_strdup, since we know the length in advance.
2003-02-26 00:12:42 +00:00
Matthias Clasen
4a2fac6031 Add Since and Deprecation info for symbols documented in the templates.
* glib/tmpl/strings.sgml:
	* glib/tmpl/scanner.sgml:
	* glib/tmpl/main.sgml:
	* glib/tmpl/macros_misc.sgml:
	* glib/tmpl/hash_tables.sgml: Add Since and Deprecation info
	for symbols documented in the templates.

	* glib/gstrfuncs.c (g_strncasecmp): Break long deprecation
	info into two paragraphs.
2002-12-05 22:32:20 +00:00
Owen Taylor
bbbd329ff5 Patch from Sven Neumann to make the include order consistent. (#71704)
Tue Dec  3 20:22:27 2002  Owen Taylor  <otaylor@redhat.com>

        * glib/*.c: Patch from Sven Neumann to make the
        include order consistent. (#71704)
2002-12-04 01:27:44 +00:00
Matthias Clasen
847b3c3dd4 It is a 2.2 addition.
* glib/gstrfuncs.c (g_ascii_strtoull): It is a 2.2 addition.
2002-11-29 19:35:10 +00:00
Matthias Clasen
97489993f7 Adjust to changed parameter names.
* glib/gtimer.c (g_time_val_add): Adjust to changed parameter names.

	* glib/gutils.c (g_get_application_name): Mark as 2.2. addition.

	* glib/gstrfuncs.c (g_ascii_strtoull): Mark as 2.0.7 addition.

	* glib/tmpl/main.sgml: Write something about GSourceDummyMarshal.

	* glib/tmpl/date.sgml:
	* glib/tmpl/string_utils.sgml: Remove redundant docs.

	* glib/glib-sections.txt: Add g_ascii_strtoull and
	g_get_application_name.
2002-11-28 23:11:58 +00:00
Matthias Clasen
803bae66a3 Move some docs inline, and add deprecation information. To see the list of
* glib/gutils.c:
	* glib/gtree.c:
	* glib/gstring.c:
	* glib/gstrfuncs.c:
	* glib/giochannel.c: Move some docs inline, and add deprecation
	information. To see the list of affected functions, grep for
	"Deprecated:".

	* glib/tmpl/strings.sgml:
	* glib/tmpl/string_utils.sgml:
	* glib/tmpl/misc_utils.sgml: Move some docs inline.
2002-11-28 20:46:29 +00:00
Matthias Clasen
a69dc4b65d Mark 2.2 API additions. 2002-11-28 00:15:45 +00:00
Owen Taylor
4d059644f5 Avoid non-ANSI pointer comparison. (#54344, Morten Welinder)
Tue Nov 26 09:51:43 2002  Owen Taylor  <otaylor@redhat.com>

        * glib/gstrfuncs.c (g_strchomp): Avoid non-ANSI pointer
        comparison. (#54344, Morten Welinder)

        * tests/strfunc-test.c (main): Add tests for strchomp().
2002-11-26 15:04:06 +00:00
Matthias Clasen
bc54ea6edf Include a printf implementation supporting C99 snprintf and SUS
positional parameters:  (#79488)

	* glib/gstrfuncs.c:
	* glib/gspawn-win32.c:
	* glib/gscanner.c:
	* glib/gconvert.c:
	* glib/gbacktrace.c: Use _g_printf wrappers.

	* glib/gutils.c (g_vsnprintf): Simplify, since we can assume C99
	snprintf semantics now.

	* glib/gmessages.c (printf_string_upper_bound): No longer needed,
	since we can assume C99 snprintf semantics now.
	(g_logv): Simplify.

	* acinclude.m4 (AC_FUNC_PRINTF_UNIX98): New macro to check wether
	printf supports SUS positional parameters.

	* configure.in: New option --enable-included-printf to force
	compilation of trio; otherwise trio is compiled if the system
	printf misses either C99 snprintf semantics of SUS positional
	parameters.

	* glib/Makefile.am (SUBDIRS): Conditionally compile trio.
	(libglib_2_0_la_SOURCES): Add gprintf.c and gprintfint.h.
	(glibsubinclude_HEADERS): Add gprintf.h.

	* glib/gprintfint.h: New private wrapping either system printf
	or trio printf variants in _g_printf wrappers for use inside glib.

	* glib/gprintf.h: New public header declaring g_printf variants.
	* glib/gprintf.c: Corresponding implementations.

	* glib/trio/*: New directory, containing the trio-1.9 sources.

	* glib/tmpl/string_utils.sgml: Add note on including gprintf.h,
	move some docs inline.

	* glib/glib-sections.txt: Add g_printf, g_vprintf, g_fprintf,
	g_vfprintf, g_sprintf, g_vsprintf.
2002-11-21 00:35:15 +00:00
Owen Taylor
17cff0324d Fix strtull/strtoull type in docs (#99012, Morten Welinder.) Add copyright
Tue Nov 19 14:38:18 2002  Owen Taylor  <otaylor@redhat.com>

        * glib/gstrfuncs.c (g_ascii_strtoull): Fix
        strtull/strtoull type in docs (#99012, Morten
        Welinder.) Add copyright information for code
        taken from GNU libc.
2002-11-19 19:42:05 +00:00
Matthias Clasen
efd4945d5a Minor doc markup fix. 2002-11-06 22:17:12 +00:00
Tim Janik
f650a78e8b fix comment. (g_ascii_strtoull): new function, acting like strtoull(3) in
Sat Oct 12 21:30:41 2002  Tim Janik  <timj@gtk.org>

        * merged up from glib-2-0:

        * glib/gstrfuncs.c (g_ascii_strtod): fix comment.
        (g_ascii_strtoull): new function, acting like strtoull(3) in the C
        locale.

        * glib/gscanner.[hc]: fix 32bit issues with integer parsing and
        support storing 64bit values in GTokenValue by
        using g_ascii_strtoull().
2002-10-12 19:37:48 +00:00
Alex Larsson
c8bf903639 New functions g_str_has_suffix and g_str_has_prefix.
2002-05-14  Alex Larsson <alexl@redhat.com>

	* glib/gstrfuncs.c:
	* glib/gstrfuncs.h:
	New functions g_str_has_suffix and g_str_has_prefix.

	* tests/string-test.c: (main):
	Test the new functions.
2002-05-14 18:49:50 +00:00
Owen Taylor
90d93042c2 Remove warning about g_print, etc, encoding.
Thu Mar 28 18:22:53 2002  Owen Taylor  <otaylor@redhat.com>

        * README: Remove warning about g_print, etc, encoding.

        * NEWS: Updates.

        * glib/gmessages.c (g_log_default_handler): Use %lu
        (plus a cast) when printing out pid_t arguments.
        (#76770, Morten Welinder)

        * glib/gstrfuncs.c (g_strdup_vprintf): Check the
        result of vasprintf(), return NULL on failure.
        (#76802, Akira Tagoh)

        * tests/testglib.c (TEST): Supress a warning with
        some GCC versions.
2002-03-28 23:24:23 +00:00
Matthias Clasen
3346808702 Add a note about g_strreverse() and UTF-8.
* glib/tmpl/string_utils.sgml: Add a note about g_strreverse() and UTF-8.

	* glib/gstrfuncs.c (g_strtod):
	(g_ascii_strtod):
	(g_ascii_dtostr):
	(g_ascii_formatd): Doc formatting fixes.
2002-03-11 21:38:18 +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
Darin Adler
e507791c85 New. (skip_spaces): g_unichar_isspace -> xml_isspace isspace ->
* glib/gmarkup.c: (xml_isspace): New.
	(skip_spaces): g_unichar_isspace -> xml_isspace
	* glib/gstrfuncs.c: (g_ascii_strtod): isspace -> g_ascii_isspace
	isxdigit -> g_ascii_isxdigit, isdigit -> g_ascii_isdigit
2002-02-10 05:56:06 +00:00
Darin Adler
113d5e1d74 Fix max_tokens == 1 case to match documentation. Add tests.
* glib/gstrfuncs.c: (g_strsplit): Fix max_tokens == 1 case to
	match documentation.
	* tests/strfunc-test.c: (main): Add tests.

	* tests/.cvsignore: Recently-added test.
2001-11-13 00:02:30 +00:00
Alex Larsson
3c39c8fcd0 Add g_strtod & co.
2001-10-24  Alex Larsson  <alexl@redhat.com>

	* docs/reference/glib/glib-sections.txt:
	Add g_strtod & co.

	* docs/reference/glib/tmpl/string_utils.sgml:
	Add docs for G_ASCII_DTOSTR_BUF_SIZE.

	* glib/gstrfuncs.[ch]:
	Added g_ascii_strtod, g_ascii_dtostr and g_ascii_formatd.

	* tests/Makefile.am:
	* tests/strtod-test.c:
	Add tests for g_ascii_strtod & co.
2001-10-24 18:00:11 +00:00
Matthias Clasen
d761fb4b3b documentation update. add documentation. update docs. Remove references to
* glib/gstrfuncs.c, glib/giochannel.c: documentation update.
        * glib/gqueue.c: add documentation.
        * glib/tmpl/iochannel.sgml, glib/tmpl/macros_misc.sgml,
          glib/tmpl/queue.sgml: update docs.
        * glib/tmpl/modules.sgml, glib/tmpl/threads.sgml: Remove
          references to glib-config.
2001-10-02 23:09:51 +00:00
George Lebl
46aae08e8d cast the string size to gulong and use %lu for printing to avoid 64bit
Sat Sep 29 02:33:14 2001  George Lebl <jirka@5z.com>

	* tests/testglib.c (main): cast the string size to gulong and use %lu
	  for printing to avoid 64bit issues

	* glib/gstrfuncs.[ch] (g_ascii_strncasecmp): Change the 'n' argument
	  to gsize instead guint.
2001-09-29 09:42:20 +00:00
Owen Taylor
ad813a42f0 Use gssize to match the header. (Reported by Elliot Lee.)
Thu Sep 27 14:26:57 2001  Owen Taylor  <otaylor@redhat.com>

	* glib/gstrfuncs.c (g_ascii_strup/down): Use gssize to
	match the header. (Reported by Elliot Lee.)
2001-09-27 19:14:36 +00:00
Owen Taylor
75f13548ea Copy if !g_mem_is_system_malloc, not the other way around. (Found by James
Wed Sep 26 12:41:05 2001  Owen Taylor  <otaylor@redhat.com>

	* glib/gstrfuncs.c (g_strdup_vprintf): Copy if
	!g_mem_is_system_malloc, not the other way around.
	(Found by James Antill.)
2001-09-26 16:42:10 +00:00
Owen Taylor
44dfc68e30 Use memset; might be faster if someone used this for a biiig string.
Wed Sep 26 11:00:31 2001  Owen Taylor  <otaylor@redhat.com>

	* glib/gstrfuncs.c (g_strnfill): Use memset; might be
	faster if someone used this for a biiig string.
	(Suggestion from Jakub Jelinek)
2001-09-26 15:26:44 +00:00
Owen Taylor
d75fde163d Version 1.3.9 (binary, interface == 0)
Tue Sep 25 11:34:22 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Version 1.3.9 (binary, interface == 0)

	* glib/gstrfuncs.c (g_ascii_strdown): Change g_ascii_strup/strdown
	to take a 'len' argument to match g_utf8_strup/strdown. This
	hopefully will also make it more obvious that they duplicate
	the string rather than acting like g_strup/strdown.
	(Suggestion from Matthias Clasen, #59550)
2001-09-25 15:55:39 +00:00
Owen Taylor
5277fd1e24 Rename g_mem_vtable_is_set() to g_mem_is_system_malloc().
Thu Sep 20 20:33:45 2001  Owen Taylor  <otaylor@redhat.com>

	* Rename g_mem_vtable_is_set() to g_mem_is_system_malloc().
2001-09-21 00:34:12 +00:00
Owen Taylor
5c12c0acf1 Patch from Matthias Clasen (#59806)
Wed Sep 19 14:17:31 2001  Owen Taylor  <otaylor@redhat.com>

	Patch from Matthias Clasen (#59806)

	* configure.in: Check for vasprintf().

	* glib/gmem.[ch]: Add g_mem_vtable_is_set() to be used
	for efficiency hacks to avoid extra copies when not
	needed.

	* glib/gstrfuncs.c: Use vasprintf() to implement
	g_strdup_printf() when available.

	* glib/gmessages.c (g_logv): Avoid using
	printf_string_upper_bound() when we have have vsnprintf.

	* glib/gmessages.c (printf_string_upper_bound): Don't
	segfault when warning about positional parameters.
2001-09-19 18:43:22 +00:00
Tim Janik
71075ee0db add simple test for g_path_get_basename().
Tue Sep 18 18:19:33 2001  Tim Janik  <timj@gtk.org>

        * tests/testglib.c: add simple test for g_path_get_basename().

        * glib/gfileutils.c (g_file_open_tmp):
        * glib/gstrfuncs.c (g_strerror): scratch erroneous usages
        of "illegal".
2001-09-18 16:33:20 +00:00
Tor Lillqvist
07741c07d8 Update. Don't mention pthreads.
2001-09-04  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Update. Don't mention pthreads.

	* build-dll: Remove, moved to the build module.

	* glibconfig.h.win32.in: Don't mention pthreds here, either.

	* glib/gstrfuncs.c: Mark the correct variable for export from DLL.

	* glib/giowin32.c (g_io_win32_msg_create_watch): Owen forgot to
	rename the win32_watch_funcs variable here, too.

	* */makefile.mingw.in: Don't use version number in import library
	name. Use whole version number in DLL name. Use build-dll from the
	build module.
2001-09-04 05:09:35 +00:00