29 Commits

Author SHA1 Message Date
Matthias Clasen
f6841e80cf Use G_LOG_LEVEL_DEBUG in both definitions. (#300071, Tommi Komulainen)
2005-04-10  Matthias Clasen  <mclasen@redhat.com>

	* glib/gmessages.h (g_debug): Use G_LOG_LEVEL_DEBUG in
	both definitions.  (#300071, Tommi Komulainen)
2005-04-11 01:03:37 +00:00
Matthias Clasen
4d424f4f30 Mark g_assert_warning as G_GNUC_NORETURN, to avoid compiler warnings.
2004-10-28  Matthias Clasen  <mclasen@redhat.com>

	* glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
	to avoid compiler warnings.  (#156767, Owen Taylor)
2004-10-29 02:20:02 +00:00
Matthias Clasen
0455122b1a Add g_assert_warning.
2004-09-29  Matthias Clasen  <mclasen@redhat.com>

	* glib/glib.symbols: Add g_assert_warning.

	* glib/gmessages.h:
	* glib/gmessages.c (g_assert_warning): Treat g_assert
	in the same way as g_return_if_fail and move the string
	constants into a helper function, which also takes
	care of removing the "IA__" prefix from internal aliases.
2004-09-30 02:02:00 +00:00
Matthias Clasen
208a69d450 Move the declaration of g_return_if_fail_warning() out of the ifdefs, so
2004-09-29  Matthias Clasen  <mclasen@redhat.com>

	* glib/gmessages.h: Move the declaration of
	g_return_if_fail_warning() out of the ifdefs, so that
	building with G_DISABLE_ASSERT works.
2004-09-29 22:14:49 +00:00
Owen Taylor
f43458e3a2 Use a helper function to reduce code size; omit FILE/LINE when we have
Thu Sep  9 10:37:41 2004  Owen Taylor  <otaylor@redhat.com>

        * glib/gmessages.h (g_return_[val_]if_fail): Use
        a helper function to reduce code size; omit FILE/LINE
        when we have __PRETTY_FUNCTION__.
2004-09-09 14:42:00 +00:00
Matthias Clasen
4dcb22c14a New function to install an alternate default log handler. (#66387, Darin
Sun Sep  5 01:46:11 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/glib.def:
	* glib/gmessages.h:
	* glib/gmessages.c (g_log_set_default_handler): New
	function to install an alternate default log
	handler.  (#66387, Darin Adler)
2004-09-05 05:46:33 +00:00
Matthias Clasen
f1024215a4 Add a G_GNUC_INTERNAL macro to mark function declarations as internal and
2004-08-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
	declarations as internal and avoid PLT indirections for
	them.  (#145465, Arjan van de Ven)

	* glib/gunicodeprivate.h:
	* glib/gthreadinit.h:
	* glib/gmessages.h:
	* glib/gdebug.h:
	* glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
	_g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
	_g_messages_thread_init(), _g_convert_thread_init(),
	_g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
	_g_mem_thread_private_init(), _g_messages_thread_private_init(),
	_g_utf8_normalize_wc() and _g_unichar_combining_class().

	* glib/gatomic.c: Include gthreadinit.h here to see the declaration
	for _g_atomic_thread_init().
2004-08-02 15:34:30 +00:00
Matthias Clasen
45306c3a01 Complete the g_log() family. (#135730, Sven Herzberg)
Mon Jul  5 18:50:27 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/gmessages.h (g_debug): Complete the g_log()
	family.  (#135730, Sven Herzberg)
2004-07-05 22:52:06 +00:00
Matthias Clasen
7802271bf0 Fix a bunch of typos in header comments. (#102422, Morten Welinder)
2003-02-06  Matthias Clasen  <maclas@gmx.de>

	* glib/gmessages.h:
	* glib/gmem.h:
	* glib/ghash.h:
	* glib/gasyncqueue.h:
	* glib/garray.h:
	* glib/ghook.h:
	* glib/gtypes.h: Fix a bunch of typos in header comments.
	(#102422, Morten Welinder)
2003-02-06 19:57:14 +00:00
Matthias Clasen
00a9d30b67 Use G_LIKELY without surrounding parentheses in g_assert() and
* glib/gmessages.h: Use G_LIKELY without surrounding parentheses
	in g_assert() and g_return_[val]_if_fail() so that we always trigger
	the gcc warning about "assignment used as truth value".

	* glib/gmacros.h: Always put parentheses in G_LIKELY and G_UNLIKELY.
2002-11-27 18:50:34 +00:00
Matthias Clasen
37078e206c Only use G_LIKELY in g_assert() and g_return_[val]_if_fail() if it is
* glib/gmessages.h: Only use G_LIKELY in g_assert() and
	g_return_[val]_if_fail() if it is actually doing something.
2002-11-26 19:48:52 +00:00
Matthias Clasen
827f3c4fa4 Remove the (no longer effective) empty if-branch.
* glib/gmessages.h (g_assert):
	(g_return_if_fail):
	(g_return_val_if_fail): Remove the (no longer effective) empty
	if-branch.

	* glib/gmacros.h: Change the definition of G_LIKELY, so that
	g_return_if_fail() and friends still trigger a gcc warning if
	the expr is an assignment.
2002-11-25 21:34:16 +00:00
Matthias Clasen
dc645ce354 Use G_LIKELY. (#69022)
* glib/gmessages.h (g_return_if_fail):
	(g_return_val_if_fail): Use G_LIKELY.  (#69022)

	* glib/gmacros.h (G_LIKELY):
	(G_UNLIKELY): New macros for hinting the compiler about the
	expected result of expressions. For gcc 3.x, define these
	using __builtin_expect.  (#69022)

	* glib/tmpl/macros_misc.sgml: Document G_LIKELY, G_UNLIKELY.

	* glib/glib-sections.txt: Add G_LIKELY, G_UNLIKELY.
2002-11-20 21:50:16 +00:00
Sebastian Wilhelmi
f6ccf00fed In case of G_DISABLE_ASSERT replace "G_STMT_START{ }G_STMT_END" with
2002-06-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/gmessages.h (g_assert, g_assert_not_reached,
	g_return_if_fail, g_return_val_if_fail): In case of
	G_DISABLE_ASSERT replace "G_STMT_START{ }G_STMT_END" with
	"G_STMT_START{ (void)0; }G_STMT_END", because the former chokes
	gcc prior to 3.0. (#86664)
2002-06-28 08:41:16 +00:00
Tim Janik
f4d7817b13 major cleanups. introduced _g_log_fallback_handler() to handle recursive
Wed Mar 27 18:42:22 2002  Tim Janik  <timj@gtk.org>

        * gmessages.[hc]:
        major cleanups. introduced _g_log_fallback_handler() to handle
        recursive messages which really doesn't call any GLib functions.
        this allowes the default handler to use normal GLib functions and
        also fixes user supplied log level handlers.
        fixed locking issues, based on a patch from Sebastian Willhelmi,
        attached to #74356. translate log messages from UTF-8, based
        on the same patch. save fatal and recursion flags across flag
        loop. use new integer format code from above patch.
        move GLib functions out of locked mutex state to avoid deadlocks.
        move the level prefix and filedescriptor logic into mklevel_prefix().
        move _g_debug_init() into a place where we can figure and handle
        recursion.
2002-03-27 17:57:30 +00:00
Darin Adler
864a14bae3 Use "if (expr) { } else" as I meant to in the first place. The other form
* glib/gmessages.h: Use "if (expr) { } else" as I meant to in the
	first place. The other form can trigger warnings in some compilers
	that suspect a ";" after "if (expr)" is an error.
2002-02-11 22:33:55 +00:00
Manish Singh
92a29a3dda need statement terminators for the if clauses for the precedeing change.
2002-02-11  Manish Singh  <yosh@gimp.org>

        * glib/gmessages.h: need statement terminators for the if clauses for
        the precedeing change.
2002-02-11 22:30:43 +00:00
Darin Adler
d292b4609a Use "if (expr) else" rather than "if (!(expr))" so the parentheses don't
* glib/gmessages.h: Use "if (expr) else" rather than
	"if (!(expr))" so the parentheses don't disable the gcc
	warnings about = vs. ==.
2002-02-11 22:15:42 +00:00
Christopher Blizzard
662bf991c0 Add pragma that will prevent warnings when you are not using -std=99 and
2001-12-09  Christopher Blizzard  <blizzard@redhat.com>

        * glib/gmessages.h: Add pragma that will prevent warnings when you
        are not using -std=99 and newer gcc compilers.  Patch from Red
        Hat's gtk+ 1.2 rpm.
2001-12-09 23:15:35 +00:00
Owen Taylor
f1019c04fc Get rid fo g_log_domain_glib variable in favor of just using a string
Sat Nov 17 17:21:57 2001  Owen Taylor  <otaylor@redhat.com>

        * glib/Makefile.am glib/*.c glib/gmessages.h: Get
        rid fo g_log_domain_glib variable in favor of just
        using a string constant.
2001-11-17 23:23:01 +00:00
Tim Janik
dc0b74d416 got rid of g_set_error_handler(), g_set_warning_handler(),
Mon Sep 10 17:13:36 2001  Tim Janik  <timj@gtk.org>

        * glib/gmessages.h: got rid of g_set_error_handler(),
        g_set_warning_handler(), g_set_message_handler().

Wed Sep  5 05:24:07 2001  Tim Janik  <timj@gtk.org>

        * gobject/tmpl/gboxed.sgml: documented some functions.

        * gobject/tmpl/objects.sgml: some fixups.

Mon Sep 10 19:27:47 2001  Tim Janik  <timj@gtk.org>

        * gtype.[hc]:
        g_type_add_interface*(): implement the ability to add an interface to
        a type whose parents already conform to this interface.
        such "overriding" interfaces, when initialized, are not just initialized
        with 0, but with a copy of the interface they override.
        g_type_interface_peek_parent(): new function, return the interface
        that this interface "overrides", if any.

        * testgruntime.c: test new interface stuff.
2001-09-10 18:03:31 +00:00
Tim Janik
936c1886ad fix g_return_if_fail, g_assert and friends to have a body for
Sun Aug 12 21:05:13 2001  Tim Janik  <timj@gtk.org>

        * glib/gmessages.h: fix g_return_if_fail, g_assert and friends to
        have a body for G_DISABLE_CHECKS and G_DISABLE_ASSERT.
        fixes #58873.
2001-08-12 19:08:13 +00:00
Owen Taylor
2fd6b001fb Move glib library into a subdirectory, make all GLib include files include
Tue Jun 26 11:43:46 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
	Move glib library into a subdirectory, make all GLib include
	files include as <glib/glist.h>

	* tests/testglib.c tests/testgdate.c tests/testgdateparser.c
	  tests/timeloop.c tests/timeloop-basic.c: Move all tests into
	the tests/ subdirectory.
2001-06-26 16:01:21 +00:00
Owen Taylor
f5c28ce4ab Changes for 64-bit cleanliness, loosely based on patch from Mark Murnane.
Wed Jun 20 12:00:54 2001  Owen Taylor  <otaylor@redhat.com>

        Changes for 64-bit cleanliness, loosely based on patch
	from Mark Murnane.

	* gconvert.c (g_convert/g_convert_with_fallback): Remove
	workarounds for since-fixed GNU libc bugs. Minor
	doc fix.

	* gconvert.[ch]: Change gint to gsize/gssize as
	appropriate.

	* gconvert.c (g_locale/filename_to/from_utf8): Fix incorrect
	computation of bytes_read / bytes_written.

	* gfileutils.[ch] (g_file_get_contents): Make length
	out parameter 'gsize *len'.

	* ghook.c (g_hook_compare_ids): Don't compare a
	and b as 'a - b'.

	* gmacros.h (GSIZE_TO_POINTER): Add GPOINTER_TO_SIZE,
	GSIZE_TO_POINTER.

	* gmain.c (g_timeout_prepare): Rewrite to avoid
	overflows. (Fixes bug when system clock skews
	backwards more than 24 days.)

	* gmarkup.[ch]: Make lengths passed to callbacks
	gsize, length for g_markup_parse-context_parse(),
	g_markup_escape_text() gssize.

	* gmessages.[ch] (g_printf_string_upper_bound): Change
	return value to gsize.

	* gmessages.c (printf_string_upper_bound): Remove
	a ridiculous use of 'inline' on a 300 line function.

	* gstring.[ch]: Represent size of string as a gsize,
	not gint. Make parameters to functions take gsize,
	or gssize where -1 is allowed.

	* gstring.c (g_string_erase): Make
	g_string_erase (string, pos, -1) a synonym for
	g_string_truncate for consistency with other G*
	APIs.

	* gstrfuncs.[ch]: Make all functions taking a string
	length, take a gsize, or gssize if -1 is allowed.
	(g_strstr_len, g_strrstr_len). Also fix some boundary
	conditions in g_str[r]str[_len].

	* gutf8.c tests/unicode-encoding.c: Make parameters that
	are byte lengths gsize, gssize as appropriate. Make
	character offsets, other counts, glong.

	* gasyncqueue.c gcompletion.c
          timeloop.c timeloop-basic.c gutils.c gspawn.c.
	Small 64 bit cleanliness fixups.

	* glist.c (g_list_sort2, g_list_sort_real): Fix functions
	that should have been static.

	* gdate.c (g_date_fill_parse_tokens): Fix extra
	declaration that was shadowing another.

	* tests/module-test.c: Include string.h

Mon Jun 18 15:43:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gutf8.c (g_get_charset): Make argument
	G_CONST_RETURN char **.
2001-06-23 13:55:09 +00:00
Sebastian Wilhelmi
5ff90aee0d Don't bail out, if no C++ compiler is found. Define G_HAVE_ISO_VARARGS
2001-05-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in: Don't bail out, if no C++ compiler is
	found. Define G_HAVE_ISO_VARARGS only if appropriate.

	* gmessages.h: Thus we can revert the previous patch.
2001-05-29 13:47:05 +00:00
James Henstridge
1c619608ef "#ifdef G_HAVE_ISO_VARARGS" will always succeed even when we don't have
2001-05-29  James Henstridge  <james@daa.com.au>

        * gmessages.h: "#ifdef G_HAVE_ISO_VARARGS" will always succeed
        even when we don't have ISO vararg support.  Changed to
        "#if G_HAVE_ISO_VARARGS".
2001-05-29 11:12:42 +00:00
Owen Taylor
5df92b7423 Use compile checks for ISO C99 and GNU extension varargs macros syntax and
Fri May 18 10:52:23 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in gmessages.h: Use compile checks for ISO C99 and GNU
	extension varargs macros syntax and store result in glibconfig.h
	(G_HAVE_ISO_VARARGS, G_HAVE_GNUC_VARARGS) rather than relying
	on checking predefined macros.
2001-05-18 16:00:54 +00:00
Tor Lillqvist
31c5b1899d 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.
2001-03-09 21:23:33 +00:00
Sebastian Wilhelmi
b1d1558747 Split glib.h into many header files mostly according to the resp.
2000-10-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
	gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
	ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
	gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
	grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
	gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
	into many header files mostly according to the resp. *.c-files.

	* gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
	of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
	__END_DECLS.

	* configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
	gunicode.h, : Changed guard-macro names to something more
	consistent.

	* configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
2000-10-12 11:52:07 +00:00