20 Commits

Author SHA1 Message Date
Ryan Lortie
5dbc12e9f1 Replace @Varargs with @...
to make gtk-doc happy.
2011-07-22 15:47:24 +02:00
Dan Winship
e56498ee0b Fix usage of _GNU_SOURCE
_GNU_SOURCE must be defined before including any other (system)
header, so defining it in glib-unix.h (and hoping no one has included
anything else before that) is wrong. And the "#define _USE_GNU"
workaround for this problem in gnetworkingprivate.h is even wronger
(and still prone to failure anyway due to single-include guards).

Fix this by defining _GNU_SOURCE in config.h when building against
glibc. In theory this is bad because new releases of glibc may include
symbols that conflict with glib symbols, which could then cause
compile failures. However, most people only see new releases of glibc
when they upgrade their distro, at which point they also generally get
new releases of gcc, which have new warnings/errors to clean up
anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=649201
2011-05-03 07:07:41 -04:00
Matthias Clasen
f13d561211 More header inclusion cleanup 2010-09-05 00:23:03 -04:00
Matthias Clasen
ac342a8d0c Expand the g_sprintf docs
As requested in bug 576833.
2010-07-08 19:23:42 -04:00
Ryan Lortie
2e53e50244 glib/: fully remove galias hacks 2010-07-07 19:34:35 -04:00
Tor Lillqvist
b1557680dd glib/gprintf.c Don't define _GNU_SOURCE on Windows, as _GNU_SOURCE has
2008-09-30  Tor Lillqvist  <tml@novell.com>

	* glib/gprintf.c
	* glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
	as _GNU_SOURCE has unintended side effects when compiling against
	newest mingw headers.


svn path=/trunk/; revision=7563
2008-09-30 14:04:35 +00:00
Cody Russell
2ffcf767a2 Update fix for #469051
svn path=/trunk/; revision=5717
2007-08-22 19:31:27 +00:00
Cody Russell
ae70a4e5af Document g_snprintf to return "bytes" rather than "characters".
2007-08-22  Cody Russell  <bratsche@gnome.org>

        * glib/gprintf.c: Document g_snprintf to return "bytes" rather
        than "characters".


svn path=/trunk/; revision=5716
2007-08-22 17:25:59 +00:00
Benjamin Otte
aa8150599d Clarify the documentation + regarding overflows (wording by Jan Schmidt)
* glib/gprintf.c (g_sprintf): Clarify the documentation
+       regarding overflows (wording by Jan Schmidt)

svn path=/trunk/; revision=5315
2007-01-24 16:23:23 +00:00
Sebastian Wilhelmi
307391459d Use canonical include form for internal headers. config.h is always there.
2006-05-09  Sebastian Wilhelmi  <wilhelmi@google.com>

	* glib/gprintf.c, glib/gspawn-win32.c, glib/gutf8.c,
	gthread/gthread-impl.c, gthread/gthread-posix.c,
	gthread/gthread-win32.c: Use canonical include form for internal
	headers. config.h is always there.
2006-05-09 23:07: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
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
495377c45e Fix #147651, reported by Oliver Guntermann:
2004-07-21  Matthias Clasen  <mclasen@redhat.com>

	Fix #147651, reported by Oliver Guntermann:

	* glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
	_g_gnulib_vasprintf() in a macro, since they behave
	differently wrt. to memory allocation.

	* glib/gprintf.c (g_vasprintf): Instead, differentiate
	here between the three cases: system vasprintf(),
	_g_gnulib_vasprintf(), no vasprintf().
2004-07-21 17:51:28 +00:00
Matthias Clasen
9a76ff17c1 Make the various printf feature test macros reflect the system printf,
2003-10-05  Matthias Clasen  <maclas@gmx.de>

	* configure.in: Make the various printf feature test macros
	reflect the system printf, even when using the included printf.
	In particular, don't force HAVE_C99_SNPRINTF, since g-gnulib.h
	needs that test result.  (#122973)

	* glib/gprintf.c (g_vasprintf): Don't rely on HAVE_VASPRINTF,
	directly check for _g_vasprintf.

	* glib/gprintfint.h (_g_vasprintf): Only define _g_vasprintf()
	if vasprintf() is available.

	* glib/gnulib/printf.c (_g_gnulib_vfprintf): Don't write
	trailing nul to the file. (#122973)

	* acinclude.m4 (AC_FUNC_VSNPRINTF_C99): Make the test
	detect non-C99-compliance of AIX 5.1 and Solaris
	vsnprintf().  (#122496)
2003-10-04 23:24:02 +00:00
Matthias Clasen
5eb34aa96e test suite additions. 2003-07-26 09:24:46 +00:00
Matthias Clasen
f1c0e401ab Doc additions.
2003-07-12  Matthias Clasen  <maclas@gmx.de>

	* glib/gprintf.c: Doc additions.

2003-07-12  Matthias Clasen  <maclas@gmx.de>

	* glib/tmpl/string_utils.sgml: Add a paragraph about string precision, add links to it.
	Remove markup which is now handled better by gtk-doc.
2003-07-09 19:32:16 +00:00
Morten Welinder
27b50b6d43 Avoid var declaration after statement.
2003-07-09  Morten Welinder  <terra@gnome.org>

	* glib/gprintf.c (g_vasprintf): Avoid var declaration after
	statement.
2003-07-09 19:32:16 +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
Matthias Clasen
a69dc4b65d Mark 2.2 API additions. 2002-11-28 00:15:45 +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