Commit Graph

2057 Commits

Author SHA1 Message Date
Tim-Philipp Müller
7788ead137 Special-case flag value of 0. Instead of returning the first random
* gobject/genums.c: (g_flags_get_first_value): Special-case flag
value of 0. Instead of returning the first random GFlagsValue
we come across, return the GFlagsValue for 0 if it exists or
NULL if it does not exist. Never return the GFlagsValue for 0
if the requested flags value is nonzero.
2005-08-12 16:09:19 +00:00
Matthias Clasen
19fb1c599e Bump version to 2.8.0 2005-08-12 12:56:57 +00:00
Tor Lillqvist
535939a144 Use "localhost" as fallback for g_get_host_name(), not "unknown".
2005-08-11  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (g_get_any_init): Use "localhost" as fallback for
	g_get_host_name(), not "unknown".
2005-08-10 21:13:29 +00:00
Stepan Kasal
0169468c8c Fix typos: invokation -> invocation. 2005-08-10 10:46:55 +00:00
Matthias Clasen
833abd554a Take a va_list*, not a va_list, to avoid compiler warnings about
2005-08-10  Matthias Clasen  <mclasen@redhat.com>

	* glib/gfileutils.c (g_build_path_va, g_build_pathname_va):
	Take a va_list*, not a va_list, to avoid compiler warnings
	about uninitialized variables.
2005-08-10 04:07:47 +00:00
Matthias Clasen
320711e224 Add it here.
2005-08-09  Matthias Clasen  <mclasen@redhat.com>

	* tests/gobject/Makefile.am (test_programs): Add it here.

	* tests/gobject/gvalue-test.c: Beginning of a test suite
	for GValue.
2005-08-09 19:20:33 +00:00
Matthias Clasen
d6f6214d3e Updates 2005-08-09 14:10:19 +00:00
Matthias Clasen
f3d4fb75b8 Initialize variables to not make gcc nervous.
2005-08-08  Matthias Clasen  <mclasen@redhat.com>

	* glib/gutils.c (_g_compute_locale_variants): Initialize
	variables to not make gcc nervous.
2005-08-09 02:45:20 +00:00
Manish Singh
6c538d33ee remove stray -V option to grep so it actually works.
2005-08-08  Manish Singh  <yosh@gimp.org>

        * glib/abicheck.sh: remove stray -V option to grep so it actually
        works.
2005-08-09 00:25:18 +00:00
Matthias Clasen
717f3d4abb Enable the endianness test.
2005-08-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/convert-test.c: Enable the endianness test.

	* glib/gconvert.c: Make the caching of iconv descriptors
	optional.

	* configure.in: Add an --enable-iconv-cache option, and
	default to disabling iconv caching on new enough glibc.
	Somebody with access to Solaris systems will need to test
	if opening/closing of iconv descriptors is enough of
	a performance problem to warrant the caching on that
	platform. Note that the caching is causing correctness
	problems in some corner cases, thus turning it off
	is desirable unless it has severe performance implications.
2005-08-08 19:50:38 +00:00
Matthias Clasen
eb37812fbe Add a test for endianness handling.
2005-08-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/convert-test.c: Add a test for
	endianness handling.
2005-08-08 16:48:23 +00:00
Sunil Mohan Adapa
ee7932f307 Added Telugu translation done by Vikram Phaneendra <vikramphaneendra@yahoo.co.in>, Dandu Prasad <dandu_prasad2000@yahoo.com> and Ramana Sai <rmn_sai@yahoo.co.in> 2005-08-08 09:54:32 +00:00
Matthias Clasen
308678a613 Add convert-test here.
2005-08-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/Makefile.am: Add convert-test here.

	* tests/convert-test.c: Add the beginning of a testsuite
	for g_convert() and friends.
2005-08-08 05:30:20 +00:00
Matthias Clasen
cb3f32383e Improve ABI checking 2005-08-06 15:26:49 +00:00
Manish Singh
f1e1727ce7 remove unused n_threads variable.
2005-08-05  Manish Singh  <yosh@gimp.org>

        * tests/refcount/closures.c: remove unused n_threads variable.
2005-08-06 00:33:49 +00:00
Matthias Clasen
0273f0e337 Bump version 2005-08-05 16:10:41 +00:00
Matthias Clasen
d5c882abc4 2.7.7 2005-08-05 16:09:42 +00:00
Matthias Clasen
8e7a50ab42 Always export g_atomic_int_get and g_atomic_pointer_get as functions, even
2005-08-04  Matthias Clasen  <mclasen@redhat.com>

	* glib/glib.symbols:
	* glib/gatomic.[hc]: Always export g_atomic_int_get and
	g_atomic_pointer_get as functions, even if we have macros,
	to avoid changing the ABI depending on configuration.

	* glib/gatomic.c: Fix the s390 implementations of
	g_atomic_pointer_compare_and_exchange.
2005-08-04 17:21:03 +00:00
Tor Lillqvist
9c45222942 Move the G_BEGIN_DECLS/G_END_DECLS pair outside the #if/#else/#endif
2005-08-04  Tor Lillqvist  <tml@novell.com>

	* glib/gstdio.h: Move the G_BEGIN_DECLS/G_END_DECLS pair outside
	the #if/#else/#endif block. Otherwise we had G_BEGIN_DECLS without
	matching G_END_DECLS on Unix, and G_END_DECLS without matching
	G_BEGIN_DECLS on Win32.
2005-08-04 17:07:21 +00:00
Matthias Clasen
a22afd365e Bump version 2005-08-03 21:03:17 +00:00
Matthias Clasen
6e103ba100 2.7.6 2005-08-03 20:58:37 +00:00
Ross Burton
fada30c956 Small doc updates 2005-08-03 20:24:18 +00:00
Matthias Clasen
4f016b4824 Add native atomic operations for s390.
2005-08-03  Matthias Clasen  <mclasen@redhat.com>

        * glib/gatomic.c: Add native atomic operations
        for s390.

        * configure.in: ... and use them on s390.
2005-08-03 20:18:15 +00:00
Ross Burton
bbecb798e2 Fix Docbook tag typo 2005-08-03 19:44:52 +00:00
Matthias Clasen
b8fb9fd074 Add G_BEGIN_DECLS/G_END_DECLS. (#312424)
2005-08-03  Matthias Clasen  <mclasen@redhat.com>

	* glib/gstdio.h: Add G_BEGIN_DECLS/G_END_DECLS.  (#312424)
2005-08-03 13:59:43 +00:00
Matthias Clasen
3ca6489941 Name fixes 2005-08-02 21:30:49 +00:00
Matthias Clasen
74ff285644 Don't go in an infinite loop if the input text ends in an incomplete
2005-08-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c (g_convert_with_iconv): Don't go in an
	infinite loop if the input text ends in an incomplete multibyte
	character.  (#312402, Sebastian Bacher)
2005-08-02 21:10:16 +00:00
Matthias Clasen
988eaa83c0 Bump version 2005-08-02 16:22:17 +00:00
Matthias Clasen
e4c231a62a 2.7.5 2005-08-02 16:17:48 +00:00
Matthias Clasen
de298ae712 Cleanup converter state after the conversion. Document streaming
2005-08-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c (g_convert_with_iconv, g_convert_with_fallback):
	Cleanup converter state after the conversion. Document streaming
	conversion pitfalls.  (#311337)
2005-08-02 14:58:20 +00:00
Tor Lillqvist
352a0e6c0b tests/refcount/objects.c tests/refcount/properties.c Use g_usleep()
2005-08-02  Tor Lillqvist  <tml@novell.com>

	* tests/refcount/objects.c
	* tests/refcount/properties.c
	* tests/refcount/signals.c: Use g_usleep() instead of sleep() for
	portability.
2005-08-02 06:55:38 +00:00
Tim Janik
10a3867a6e test high contention on closure reference counts to trigger and catch
Mon Aug  1 23:33:47 2005  Tim Janik  <timj@imendio.com>

        * tests/refcount/closures.c: test high contention on closure
        reference counts to trigger and catch non-atomic updates.

        * tests/refcount/objects.c:
        * tests/refcount/objects2.c:
        * tests/refcount/properties.c:
        * tests/refcount/properties2.c:
        * tests/refcount/signals.c:
        fixed up test and threading fundamentals. variables accessed from all
        threads need to be volatile. context switches are enforced by using
        g_thread_yield(), not g_usleep(1) which may result in busy waits on
        some platforms. for testcode, always consider all warnings and
        critical messages fatal. issue the currently running program on
        stdout. improved progress indicators.

        * tests/refcount/properties.c:
        * tests/refcount/objects.c:
        don't overdo the number of testing threads to keep the testing machine
        usable, 2 threads can produce as much contention as 20 if executing the
        same code.

        * tests/refcount/signals.c: only start 1 thread per object. GObject
        doesn't provide mutually exclusive object access, but only mutually
        exclusive reference count modification.

        * tests/Makefile.am: added closures test.
2005-08-01 21:47:15 +00:00
Tor Lillqvist
7aa2e37f5e Ugh, fix braino. 2005-08-01 19:23:10 +00:00
Tor Lillqvist
d5a989875b Make it pass on Win32. (from_uri_tests[]): Take into consideration that on
2005-08-01  Tor Lillqvist  <tml@novell.com>

	* tests/uri-test.c: Make it pass on Win32.
	(from_uri_tests[]): Take into consideration that on Win32 we don't
	return "localhost" hostnames.
	(safe_strcmp_filename): New function that considers slash and
	backslash equal on Win32.
	(run_roundtrip_tests): Use safe_strcmp_filename().
2005-08-01 19:17:35 +00:00
Tim Janik
2d1cf6c139 moved G_DATALIST_*_POINTER() macros here, because proper use requires the
Sun Jul 31 01:50:20 2005  Tim Janik  <timj@gtk.org>

        * glib/gdataset.c:
        moved G_DATALIST_*_POINTER() macros here, because proper use requires
        the global g_dataset_global mutex to be acquired.
        g_datalist_id_get_data():
        g_datalist_unset_flags():
        g_datalist_set_flags(): properly acquire and release dataset mutex.

        * glib/gdatasetprivate.h: implement G_DATALIST_GET_FLAGS() via atomic
        pointer access to account for memory barriers. moved all other macros.
2005-07-31 00:05:39 +00:00
Matthias Clasen
5f70ee19f8 Include glibintl.h, not gi18n.h, noticed by Dan Winship.
2005-07-26  Matthias Clasen  <mclasen@redhat.com>

	* glib/goption.c: Include glibintl.h, not gi18n.h, noticed
	by Dan Winship.
2005-07-26 19:41:05 +00:00
Matthias Clasen
ab033c6d1b Try -mt as compiler flag for threads, needed for the HP C compiler on
2005-07-26  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Try -mt as compiler flag for threads, needed
	for the HP C compiler on HP-UX.  (#163051, Paul Cornett)
2005-07-26 19:37:34 +00:00
Matthias Clasen
27096aedb5 Fix a typo in the docs. (#311569, Ross Burton)
2005-07-26  Matthias Clasen  <mclasen@redhat.com>

	* glib/ghash.c (g_hash_table_foreach): Fix a typo in the
	docs.  (#311569, Ross Burton)
2005-07-26 15:49:15 +00:00
Matthias Clasen
8fca0ec9cf Bump version 2005-07-22 17:21:52 +00:00
Matthias Clasen
3c6e2da565 2.7.4 2005-07-22 17:02:04 +00:00
Matthias Clasen
6589b38f98 Updates 2005-07-21 19:27:00 +00:00
Manish Singh
6394b31435 use G_CALLBACK for signal connections.
2005-07-20  Manish Singh  <yosh@gimp.org>

        * tests/refcount/signals.c: use G_CALLBACK for signal connections.
2005-07-20 20:46:58 +00:00
Matthias Clasen
8ac11176ab Don't get stuck in here if immediate is TRUE. (#310954, Hong Jen Yee)
2005-07-20  Matthias Clasen  <mclasen@redhat.com>

	* glib/gthreadpool.c (g_thread_pool_free): Don't get
	stuck in here if immediate is TRUE.  (#310954,
	Hong Jen Yee)

	* tests/threadpool-test.c (main): Test immediate == TRUE.
2005-07-20 17:06:02 +00:00
Tor Lillqvist
f0a0fe7a44 Make this an inline function. Define it only if G_CAN_INLINE and not C++.
2005-07-20  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.h (g_win32_get_system_data_dirs): Make this an
	inline function. Define it only if G_CAN_INLINE and not
	C++. (#173098)
2005-07-20 08:37:13 +00:00
Matthias Clasen
912e4ea3cb Avoid an unnecessary strlen if len is -1. (#169692, Benoit Dejean)
2005-07-19  Matthias Clasen  <mclasen@redhat.com>

        * glib/gstring.c (g_string_chunk_insert_len): Avoid
        an unnecessary strlen if len is -1.  (#169692,
        Benoit Dejean)
2005-07-19 19:05:19 +00:00
Matthias Clasen
cf17bb79d2 Fix g_atomic_pointer_compare_and_exchange on sparc64. (#167572, Gert
2005-07-19  Matthias Clasen  <mclasen@redhat.com>

        * glib/gatomic.c (g_atomic_pointer_compare_and_exchange):
        Fix g_atomic_pointer_compare_and_exchange on sparc64.
        (#167572, Gert Doering)
2005-07-19 15:30:23 +00:00
Matthias Clasen
0719f3b463 Bump version 2005-07-15 17:41:28 +00:00
Matthias Clasen
1760b7074d 2.7.3 2005-07-15 17:28:17 +00:00
Matthias Clasen
39ea11ce6b Make refcounting threadsafe by using atomic operations. (#166020, Wim
2005-07-15  Matthias Clasen  <mclasen@redhat.com>

	Make refcounting threadsafe by using atomic
	operations.  (#166020, Wim Taymans)

	* gobject.c: Use a recursive lock to protect the
	notify queue.
	(g_object_unref): Get rid of g_object_last_unref and
	do the last unref handling in g_object_unref.
	(g_object_ref, g_object_unref): Use atomic operations.

	* gsignal.c (struct _HandlerMatch): Use a full integer
	for the ref_count field.
	(handler_ref, handler_unref_R): Use atomic operations.

	* gparam.c (g_param_spec_ref, g_param_spec_unref):
	Use atomic operations instead of a lock to make the
	refcounting threadsafe.

	* gclosure.c (g_closure_ref, g_closure_unref): Use atomic
	operations. This is more complicated here, since the
	refcount is stored in a bitfield, so we also have
	to access all other bitfield members atomically.

	* gsignal.c (handlers_find): Read the meta_marshal flag
	of the closure atomically.

	* tests/Makefile.am (SUBDIRS): Add tests/refcount

	* configure.in: Add tests/refcount

	* tests/refcount/properties.c: Test property changes
	from multiple threads.

	* tests/refcount/signals.c: Test signal emission from
	multiple threads.

	* tests/refcount/objects.c: Test refcounting from
	multiple threads.

	* tests/refcount/objects2.c:
	* tests/refcount/properties2.c: Tests to measure the
	overhead of threadsafe refcounting.

	* glib/giochannel.c (g_io_channel_ref, g_io_channel_unref):
	Use atomic operations to make refcounting
	threadsafe.  (#166020, Wim Taymans)
2005-07-15 16:51:10 +00:00
Matthias Clasen
58729b464b Updates 2005-07-15 15:43:59 +00:00