Commit Graph

531 Commits

Author SHA1 Message Date
Michael Natterer
325bd373d4 don't free or modify static strings, dup them when needed and clear the
2007-04-24  Michael Natterer  <mitch@imendio.com>

	* gobject/gparamspecs.c (param_string_validate): don't free or
	modify static strings, dup them when needed and clear the
	G_VALUE_NOCOPY_CONTENTS flag. Fixes bug #432895.

	* tests/gobject/paramspec-test.c: test all GParamSpecString
	validations with static and allocated strings.


svn path=/trunk/; revision=5454
2007-04-24 13:36:58 +00:00
Emmanuele Bassi
db8642a56c Add g_hash_table_get_keys() and g_hash_table_get_values(), API to retrieve
2007-04-11  Emmanuele Bassi  <ebassi@gnome.org>

	* glib/ghash.[ch]: Add g_hash_table_get_keys() and
	g_hash_table_get_values(), API to retrieve the keys
	and values inside an hash table in list form. (#413133)

	* glib/glib.symbols: Update symbols.

	* tests/hash-test.c: Exercise newly added functions.

svn path=/trunk/; revision=5444
2007-04-11 13:09:38 +00:00
Matthias Clasen
ab74710386 Handle missing $RANDOM
svn path=/trunk/; revision=5435
2007-03-23 06:27:58 +00:00
Chris Wilson
033e54e8a4 Track whether the last key=value pair in a group is a blank line and
2007-03-22  Chris Wilson  <chris@chris-wilson.co.uk>

	* glib/gkeyfile.c: Track whether the last key=value pair in a group
	is a blank line and during to_data() only insert a new blank line
	betweens group in its absence. This allows the beautification of the
	GKeyFile and prevents newlines being inserted indefinitely. (#420686)

	* tests/keyfile-test.c (test_reload_idempotency): Test that after a 
	single beautification pass, g_key_file_to_data() does not alter its
	input data.


svn path=/trunk/; revision=5431
2007-03-22 08:58:59 +00:00
Hans Breuer
770b29bad2 define PCRE_STATIC to reflect the inclusion of pcre as LIB, not
2007-03-17  Hans Breuer  <hans@breuer.org>

	* glib/makefile.msc.in glib/pcre/makefile.msc 
	  glib/update-pcre/update.sh : define PCRE_STATIC to reflect the 
	inclusion of pcre as LIB, not stand-alone DLL. Also set NEWLINE=-1
	to match any newline by default, use of ../../build/win32/make.msc

	* glib/gregex.h : minimal includes of <glib/*.H> instead of <glib.h>

	* glib/gnulib/makefile.msc : make use of ../../build/win32/make.msc

	* tests/regex-test.c(verbose): don't pass a string containing '%' 
	as first parameter to g_print ()
	(test_match) : for the unexpected case output pattern and string
	escaped

	* tests/child-test.c tests/slice-color.c : fix c99ism
	* tests/slice-test.c : fix c99ism and gccism
	* tests/mapping-test.c tests/base-64-tests.c : don't 
	#include <unistd.h> unconditionally
	* tests/option-test.c : use G_GINT64_CONSTANT() instead of direct LL

	* tests/makefile.msc.in : more tests build


svn path=/trunk/; revision=5423
2007-03-17 09:49:09 +00:00
Matthias Clasen
45b2988d05 Don't export the consistency check function
svn path=/trunk/; revision=5422
2007-03-17 04:25:40 +00:00
Marco Barisione
0196d63975 Add GRegex for regular expression matching. (#50075)
2007-03-15  Marco Barisione <marco@barisione.org>

	Add GRegex for regular expression matching.  (#50075)

	* configure.in: Handle GRegex compilation.

	* glib/gregex.c:
	* glib/gregex.h: Code for GRegex.

	* glib/Makefile.am:
	* glib/makefile.msc.in: Updated makefiles.

	* glib/pcre/*: Internal copy of PCRE.

	* glib/update-pcre/*: Stuff to automatically update the internal PCRE
	to a newer version.

	* tests/regex-test.c:
	* tests/Makefile.am:
	* tests/makefile.msc.in: Add tests for GRegex.

svn path=/trunk/; revision=5408
2007-03-15 13:01:31 +00:00
Matthias Clasen
2a867b1fca Return negative values. (#416062)
2007-03-08  Matthias Clasen  <mclasen@redhat.com>

        * glib/gstrfuncs.c (g_strtoll): Return negative values.
        (#416062)

        * tests/strtoll-test.c: Add more testcases.



svn path=/trunk/; revision=5390
2007-03-09 03:40:43 +00:00
Matthias Clasen
085042c6d7 Apply a patch by Loïc Minier to fix building with -Wl,-z,defs. (#149144)
2007-03-06  Matthias Clasen  <mclasen@Redhat.com>

        * tests/Makefile.am: Apply a patch by Loïc Minier
        to fix building with -Wl,-z,defs.  (#149144)



svn path=/trunk/; revision=5367
2007-03-06 05:01:45 +00:00
Soren Sandmann
f13d070e20 For move, test moving between two sequences. Add test for swap.
2007-02-16  Soren Sandmann <sandmann@redhat.com>

	* tests/sequence-test.c: For move, test moving between two
	sequences. Add test for swap.

	* glib/gsequence.c: Replace splay tree with a treap.
	(check_node): Add checks for the treap invariants.


svn path=/trunk/; revision=5337
2007-02-16 06:00:08 +00:00
Soren Sandmann
5fa8f600f5 Force an arbitrary order on otherwise identical items.
2007-02-07  Soren Sandmann <sandmann@daimi.au.dk>

	* tests/sequence-test.c (compare_items): Force an arbitrary order
	on otherwise identical items. 

	* glib/gsequence.c: Add comment discussing splay trees vs. other trees. 
	* glib/gsequence.c (is_end): Add fast path for the common case
	when the node is not actually the end node.


svn path=/trunk/; revision=5328
2007-02-08 02:22:52 +00:00
Soren Sandmann
840d9bab26 Don't prohibit access until after the g_sequence_move_range() call. Bug
2007-02-05  Soren Sandmann <sandmann@daimi.au.dk>

	* glib/gsequence.c (g_sequence_sort_iter): Don't prohibit access
	until after the g_sequence_move_range() call.  Bug 404759,
	Christian Persch.

       * tests/sequence-test.c: Formatting fix.


svn path=/trunk/; revision=5325
2007-02-06 04:49:41 +00:00
Soren Sandmann
576a5d4127 Add a new 'real_sequence' field. (g_sequence_new): Initialize
2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>

        * glib/gsequence.c (struct _GSequence): Add a new 'real_sequence'
        field.
        (g_sequence_new): Initialize real_sequence to the sequence
        (g_sequence_sort_iter): Set real_sequence of the temporary
        sequence to the real sequence.
        (g_sequence_sort_changed_iter): Same
        (g_sequence_insert_sorted_iter): Same
        (g_sequence_search_iter): Same
        (g_sequence_iter_get_sequence): Return real_sequence

        * tests/sequence-test.c (compare_iters): Insert assertions that
        the iters point to the sequence being manipulated.


svn path=/trunk/; revision=5323
2007-02-04 03:39:57 +00:00
Soren Sandmann
674c4df418 New files implementing GSequence, a list implemented using a binary tree.
2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>

	* glib/gsequence.[ch]: New files implementing GSequence, a list
	implemented using a binary tree.
	* glib/glib.h, glib/glib.symbols: Update for GSequence.
	* docs/reference: Add documentation for GSequence
	* tests: Add sequence-test.c, a thorough test of all of 
	the GSequence API.


svn path=/trunk/; revision=5322
2007-02-03 23:24:50 +00:00
Matthias Clasen
912027f0df Some file list updates (#398069, Owen Taylor)
2007-01-19  Matthias Clasen  <mclasen@redhat.com>

        Some file list updates (#398069, Owen Taylor)

        * docs/Changes-2.0.txt
        * docs/reference/README.cvs-commits
        * glib.spec.in: Remove obsolete files

        * tests/Makefile.am:
        * glib/libcharset/Makefile.am:
        * gobject/Makefile.am:
        * Makefile.am: Add some missing files to EXTRA_DIST

        * tests/timeloop-basic.c: Make it build
        * HACKING: Small updates


svn path=/trunk/; revision=5302
2007-01-19 15:50:30 +00:00
Matthias Clasen
38b9221961 Rework the handling of invalid keys/groups again. We are back to being
2007-01-12  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c: Rework the handling of invalid
        keys/groups again. We are back to being liberal about
        what we accept, and only reject things that would lead
        to non-rereadable keyfiles.

        * tests/keyfile-test.c: Adapt tests.



svn path=/trunk/; revision=5254
2007-01-12 20:25:57 +00:00
Behdad Esfahbod
46dae95f4a Fix tests on x86_64.
2007-01-04  Behdad Esfahbod  <behdad@gnome.org>

        * tests/bit-test.c (builtin_bit_nth_lsf1), (builtin_bit_nth_lsf2),
        (builtin_bit_nth_msf): Fix tests on x86_64.


svn path=/trunk/; revision=5216
2007-01-05 03:31:54 +00:00
Behdad Esfahbod
048efdfbd5 Fix bug in g_bit_nth_lsf (#371631) and use __builtin_clzl for
2007-01-03  Behdad Esfahbod  <behdad@gnome.org>

        * glib/gutils.h: Fix bug in g_bit_nth_lsf (#371631) and use 
        __builtin_clzl for g_bit_storage if available (#371670).

        * tests/Makefile.am:
        * tests/bit-test.c: New test, to test g_bit_* operations against
        naive and builtin implementations.


svn path=/trunk/; revision=5200
2007-01-03 20:08:53 +00:00
Michael Natterer
feb07512f0 removed all .cvsignore files. SVN doesn't need them.
2007-01-03  Michael Natterer  <mitch@imendio.com>

	* removed all .cvsignore files. SVN doesn't need them.


svn path=/trunk/; revision=5198
2007-01-03 11:22:36 +00:00
Matthias Clasen
d7b7c44e40 Define G_DEFINE_DYNAMIC_TYPE and and _EXTENDED variant. (#334437)
2006-12-29 Matthias Clasen  <mclasen@redhat.com>

        * gtypemodule.h: Define G_DEFINE_DYNAMIC_TYPE and
        and _EXTENDED variant.  (#334437)
2006-12-29 06:12:11 +00:00
Tim Janik
1bd8993451 implemented static debugging hash-tree to validate slice adresses and
Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>

        * glib/gslice.h, glib/gslice.c: implemented static debugging
        hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
        use abort() to exit in mem_error() to allow catching of these in gdb.
        abort programs with a descriptive error message if g_thread_init() is
        called after GSlice was in use. previously this just silently corrupted
        the magazines.

        * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte
        pointer alignment on 64bit systems and request smaller slice sizes
        on 32bit systems.

        * tests/slice-test.c: support '~' option flag to introduce slice
        allocation/release corruption with a significant probability. this
        allowes testing of G_SLICE=debug-blocks.
2006-12-28 11:50:43 +00:00
Matthias Clasen
98d552e0cd Consistently use gsize rather than size_t. (#333310, Morten Welinder)
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * glib/gconvert.[hc]:
        * glib/gfileutils.c:
        * glib/giochannel.c:
        * glib/goption.c:
        * glib/gspawn.c:
        * glib/gunicollate.c:
        * glib/gutils.c:
        * tests/timeloop-basic.c:
        Consistently use gsize rather than size_t.  (#333310,
        Morten Welinder)
2006-12-28 04:48:06 +00:00
Matthias Clasen
ca7dc0e94c Silently skip tests if we can't set LC_COLLATE to en_US. (#336438)
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * tests/run-collate-tests.sh:
        * tests/unicode-collate.c: Silently skip tests if
        we can't set LC_COLLATE to en_US.  (#336438)
2006-12-24 21:47:05 +00:00
Matthias Clasen
01f78fa7f5 Accept '/', '+' and '.' in key names, since gnome-vfs uses mime types as
2006-12-19  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c (g_key_file_is_key_name): Accept
        '/', '+' and '.' in key names, since gnome-vfs uses
        mime types as keys in some cache.

2
2006-12-19 21:08:32 +00:00
Matthias Clasen
330e9ffc1b Try a different fix for bug 346373.
2006-12-18  Matthias Clasen  <mclasen@redhat.com>

        * tests/Makefile.am: Try a different fix for bug 346373.
2006-12-18 14:50:36 +00:00
Matthias Clasen
52ef9438ca Accept '@' in locale names.
2006-12-18  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c: Accept '@' in locale names.
2006-12-18 14:13:34 +00:00
Matthias Clasen
6b52690bb5 Tighten up the check for allowed key and group names. (#343191, Tommi
2006-12-18  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c: Tighten up the check for allowed
        key and group names.  (#343191, Tommi Komulainen)

        * tests/keyfile-test.c: Test handling of key and group names.
2006-12-18 07:29:56 +00:00
Matthias Clasen
81aee2e13e Don't use $RANDOM if the shell doesn't have it. (#346373, Thomas Klausner)
* tests/Makefile.am: Don't use $RANDOM if the shell doesn't
        have it.  (#346373, Thomas Klausner)
2006-12-18 05:02:37 +00:00
Matthias Clasen
c01a364fb4 Don't use diff -u (#380801, Marek Rouchal)
2006-12-17  Matthias Clasen  <mclasen@redhat.com>

        * tests/run-markup-tests.sh: Don't use diff -u  (#380801,
        Marek Rouchal)
2006-12-17 18:01:15 +00:00
Matthias Clasen
966872d789 If the group is already there, make it current. (#385910, Joe Halliwell)
2006-12-14  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c (g_key_file_add_group): If the group
        is already there, make it current.  (#385910, Joe Halliwell)

        * tests/keyfile-test.c: Add a test for duplicate groups/keys.
2006-12-14 23:19:28 +00:00
Tor Lillqvist
256ba23b98 makefile.mingw gmodule/makefile.mingw.in glib/makefile.mingw.in
2006-11-05  Tor Lillqvist  <tml@novell.com>

	* makefile.mingw
	* gmodule/makefile.mingw.in
	* glib/makefile.mingw.in
	* gobject/makefile.mingw.in
	* gthread/makefile.mingw.in
	* tests/makefile.mingw.in: Remove from CVS. Haven't been
	maintained or distributed for long.
2006-11-05 15:42:42 +00:00
Sebastian Wilhelmi
38c633aed6 Compile errorcheck-mutex-test with thread libraries explicitly. (#74748,
2006-10-15  Sebastian Wilhelmi  <seppi@seppi.de>

        * tests/Makefile.am: Compile errorcheck-mutex-test with thread
        libraries explicitly. (#74748, Javier Villavicencio)
2006-10-15 12:18:25 +00:00
Matthias Clasen
9c19905b0e portability fix 2006-10-08 19:59:26 +00:00
Tim Janik
aa4c932630 added test program which demonstrates and checks singleton construction.
Wed Aug 16 13:59:07 2006  Tim Janik  <timj@gtk.org>

        * tests/gobject/Makefile.am:
        * tests/gobject/singleton.c: added test program which demonstrates
        and checks singleton construction.
2006-08-16 12:11:03 +00:00
Matthias Clasen
994d642cde If a character can't be converted, don't replace it with a NUL byte, but
2006-08-05  Matthias Clasen  <mclasen@redhat.com>

	* glib/guniprop.c (g_unichar_toupper, g_unichar_tolower)
	(real_toupper, real_tolower): If a character can't be converted,
	don't replace it with a NUL byte, but leave it unchanged.
	(#348491, Nikolai Weibull)

	* tests/unicode-caseconv.c: Adapt to this change.

	* tests/unicode-caseconv.c (main): Add a comment to point out
	a quirk in the test data that we are working around here.
2006-08-05 21:53:49 +00:00
Behdad Esfahbod
290443f86f Update to reflect Unicode PR #29 (#348694, Nikolai Weibull)
2006-07-31  Behdad Esfahbod  <behdad@gnome.org>

        * glib/gunidecomp.c (_g_utf8_normalize_wc): Update to reflect Unicode
        PR #29 (#348694, Nikolai Weibull)

        * tests/unicode-normalize.c (encode), (test_form): Make output more
        useful, reporting the unexpected output of the test.
2006-07-31 04:50:05 +00:00
Tor Lillqvist
94322b96da Use g_get_current_time() insted of gettimeofday().
2006-07-24  Tor Lillqvist  <tml@novell.com>

	* tests/slice-test.c: Use g_get_current_time() insted of
	gettimeofday().
2006-07-24 12:42:18 +00:00
Matthias Clasen
1f536d2f12 Fix an off-by-2 error in the leap year calculation. (#344905, Dan Winship)
2006-06-20  Matthias Clasen  <mclasen@redhat.com>

	* glib/gtimer.c (mktime_utc): Fix an off-by-2 error
	in the leap year calculation.  (#344905, Dan Winship)

	* tests/testglib.c (main): Change the test data for
	the g_time_val_from_iso8601 tests to expose an off-by-2
	error in the leap year calculation.
2006-06-20 16:37:43 +00:00
Matthias Clasen
6cc8a27894 Add tests.
2006-06-16  Matthias Clasen  <mclasen@redhat.com>

	* tests/file-test.c (test_mkstemp): Add tests.

	* glib/gfileutils.c (g_mkstemp): Allow the XXXXXX to occur
	inside the template, not just at the end.
2006-06-16 15:12:32 +00:00
Emmanuele Bassi
cc37f43d1d Return a boolean instead of void.
2006-06-12  Emmanuele Bassi  <ebassi@cvs.gnome.org>

	* glib/gbookmarkfile.h:
	* glib/gbookmarkfile.c (g_bookmark_file_remove_item): Return
	a boolean instead of void.

	* tests/bookmarkfile-test.c (test_modify): Add a test case
	for g_bookmark_file_remove_item().
2006-06-12 17:19:13 +00:00
Matthias Clasen
c3d19b850f Add some tests involving leading whitespace.
2006-06-05  Matthias Clasen  <mclasen@redhat.com>

	* tests/strtod-test.c: Add some tests involving
	leading whitespace.

	* glib/gstrfuncs.c (g_ascii_formatd): Skip leading
	whitespace.  (#343899, Øystein Johansen)
2006-06-05 14:16:47 +00:00
Matthias Clasen
14538bb8d6 Avoid running in an assertion with small writes. (#343566, Chris Wilson)
2006-06-01  Matthias Clasen  <mclasen@redhat.com>

	* glib/giochannel.c (g_io_channel_write_chars): Avoid
	running in an assertion with small writes.  (#343566, Chris
	Wilson)

	* tests/iochannel-test.c: Add a testcase for small writes.
2006-06-01 15:57:38 +00:00
Matthias Clasen
c8922bb143 Output that test-markup is expected to produce when run on the valid
2006-05-28  Matthias Clasen  <mclasen@redhat.com>

	* tests/markups/expected-*: Output that test-markup
	is expected to produce when run on the valid gmarkup
	examples.

	* tests/markup-test.c: Only dump the results of the
	first, unchunked parse, to compare it against the expected
	output.

	* tests/run-markup-tests.sh: For valid examples, compare
	the output of test-markup against the corresponding
	expected-<n> file.
2006-05-28 22:58:41 +00:00
Matthias Clasen
49ab402f5a g_ascii_strtoll 2006-05-16 05:49:46 +00:00
Bastien Nocera
93ec25ad67 add documentation for G_OPTION_ARG_INT64
2006-05-11  Bastien Nocera  <hadess@hadess.net>

	* glib/tmpl/option.sgml: add documentation for G_OPTION_ARG_INT64

2006-05-11  Bastien Nocera  <hadess@hadess.net>

	* glib/goption.c: (parse_int64), (parse_arg), (free_changes_list):
	* glib/goption.h:
	* tests/option-test.c: (arg_test6), (main): add an int64 type for
	GOption (G_OPTION_ARG_INT64) (#341237)
2006-05-11 18:37:15 +00:00
Sebastian Wilhelmi
a194e2e971 Adapt to GLib coding standards.
2006-05-10  Sebastian Wilhelmi  <wilhelmi@google.com>

	* tests/errorcheck-mutex-test.c: Adapt to GLib coding standards.
2006-05-10 23:58:27 +00:00
Sebastian Wilhelmi
e4f8f3b95c Renamed to glib/gthreadprivate.h and moved system thread identifier
2006-05-09  Sebastian Wilhelmi  <wilhelmi@google.com>

	* glib/gthreadinit.h: Renamed to glib/gthreadprivate.h and moved
	system thread identifier comparision and assignment macros from
	glib/gthread.c to glib/gthreadprivate.h.

	* glib/Makefile.am, glib/gatomic.c, glib/gconvert.c, glib/gmain.c,
	glib/gmem.c, glib/gmessages.c, glib/grand.c, glib/gslice.c,
	glib/gthread.c, glib/gutils.c, gthread/gthread-impl.c: Use
	glib/gthreadprivate.h instead of glib/gthreadinit.h.

	* gthread/gthread-impl.c: Use GSystemThread instead of GThread for
	owner determination. This fixes #311043 and is mostly modeled
	after the patch from jylefort@FreeBSD.org.
2006-05-10 00:44:50 +00:00
Matthias Clasen
eb9ff05320 Use encoding names which may work better on Solaris. (#340434, Alessandro
2006-05-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/convert-test.c (test_one_half): Use encoding names which
	may work better on Solaris.  (#340434, Alessandro Vesely)
2006-05-08 16:58:24 +00:00
Matthias Clasen
eda3af5546 Add some tests for invalid floating point numbers.
2006-05-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_number): Add some tests for
	invalid floating point numbers.
2006-05-08 16:48:47 +00:00
Matthias Clasen
92dc9fe794 Add some more tests.
2006-05-03  Matthias Clasen  <mclasen@redhat.com>

	* tests/base64-test.c: Add some more tests.
2006-05-03 15:27:40 +00:00