Commit Graph

84 Commits

Author SHA1 Message Date
Alexander Larsson
5cf8f1d4a8 Add base64 encode/decode functions
2006-04-04  Alexander Larsson  <alexl@redhat.com>

	* glib/Makefile.am:
	* glib/gbase64.[ch]:
	* glib/glib.symbols:
	Add base64 encode/decode functions

	* glib/glib.h:
	Include gbase64.h

	* tests/Makefile.am:
	* tests/base64-test.c:
	Tests for base64 functions
2006-04-04 13:03:23 +00:00
Emmanuele Bassi
9bf3a0fa5f Add test suite for GBookmarkFile.
2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>

	* tests/Makefile.am:
	* tests/bookmarkfile-test.c:
	* tests/run-bookmark-test.sh:
	* tests/bookmarks/*.xbel: Add test suite for GBookmarkFile.
2006-03-27 18:28:07 +00:00
Tim Janik
3f9d65375e added mem_error() and mem_assert() to test and handle errors without
Tue Dec 20 18:14:14 2005  Tim Janik  <timj@imendio.com>

        * glib/gslice.[hc]: added mem_error() and mem_assert() to test and
        handle  errors without depending on gmessage.c which might not be
        setup when the error occours.
        removed G_SLICE_CONFIG_ALWAYS_FREE config option, fixed the code so
        always freeing can be achieved by adjusting the working set time to
        0 with G_SLICE_CONFIG_WORKING_SET_MSECS.
        added G_SLICE_CONFIG_COLOR_INCREMENT to test different color increments
        (mainly 0 and 1). reduced the minimum block size to 128 bytes, to
        minimize wastage if small amounts of differently sized structrues are
        allocated, this does come at a performance cost of roughly 5% though.
        fixed up block alignment calculation, so it works for varying
        block sizes. only use strerror() not g_strerror() since the latter
        depends on working GQuark and GSlice.
        mem_error(): implemented in terms of fprintf and vfprintf.

        * tests/slice-color.c: new program to test cache colorization effects.

        * tests/slice-test.c: trade G_SLICE_CONFIG_ALWAYS_FREE for 0 duration
        G_SLICE_CONFIG_WORKING_SET_MSECS.
2005-12-20 17:35:02 +00:00
Matthias Clasen
81f0bb11a9 Set MALLOC_CHECK_ and MALLOC_PERTURB_
2005-12-05  Matthias Clasen  <mclasen@redhat.com>

	* tests/Makefile.am (TESTS_ENVIRONMENT):
	* tests/gobject/Makefile.am (TESTS_ENVIRONMENT): Set
	MALLOC_CHECK_ and MALLOC_PERTURB_

	* tests/run-collate-tests.sh: Run the collation tests explicitly
	in en_US locale. (#320463)
2005-12-05 16:35:38 +00:00
Martyn James Russell
a127920458 - Added support for sorting async queues by with _push_sorted(),
* docs/reference/glib/glib-sections.txt:
* glib/gasyncqueue.[ch]:
- Added support for sorting async queues by with _push_sorted(),
_push_sorted_unlocked(), _sort() and _sort_unlocked() (#323047).

* tests/Makefile.am:
* tests/asyncqueue-test.c:
- Added test case for gasyncqueue.c
2005-12-05 15:08:45 +00:00
Tim Janik
2731276269 extended to perform the benchmarking on the old memchunk code if 'O' is
Fri Dec  2 10:55:07 2005  Tim Janik  <timj@imendio.com>

        * tests/slice-test.c: extended to perform the benchmarking on the old
        memchunk code if 'O' is selected.

        * tests/memchunks.c: new file which contains the old GLib mem chunks
        implementation with prefix old_mem_chunk_.

        * tests/Makefile.am: added memchunks.c
2005-12-02 09:57:06 +00:00
Matthias Clasen
470abcc950 Remove a duplicate _LDADD 2005-12-01 16:43:56 +00:00
Tim Janik
733b1789c1 new slice allocator implementation.
Thu Dec  1 17:32:46 2005  Tim Janik  <timj@imendio.com>

        * glib/gslice.[hc]: new slice allocator implementation.

        * tests/slice-test.c: added random slice allocation test.

        * glib/gthread.[hc]: removed newly added private thread mem API.

        * glib/gthreadinit.h:
        * glib/gmessages.c:
        * glib/gthread.c:
        * glib/gmem.c: divided glib threading initialisation into three phases,
        initialisation where private keys and messaging are not available (only
        needed by gmem.c), initialisation without messaging but private keys
        available (gslice.c, gmessage.c), and full fledged initialisers that
        server the rest of glib. initialisation functions got renamed to reflect
        the limitations of their corresponding phases.

        * glib/gmem.c: removed memchunk code, defer allocations to
        g_slice_* instead.

        * glib/gmem.[hc]: removed g_slice_* skeletons.

        * glib/glib.symbols: added g_slice_* symbols.

        * configure.in: check for availability of posix_memalign(3), memalign(3)
        and valloc(3).

        * glib/Makefile.am: added gslice.[hc].
2005-12-01 16:34:33 +00:00
Matthias Clasen
d7deadb1e2 2.9.0 2005-11-18 13:58:48 +00:00
Matthias Clasen
1ee0917984 Unit tests for g_utf8_pointer_to_offset and g_utf8_offset_to_pointer.
2005-11-17  Matthias Clasen  <mclasen@redhat.com>

	* tests/Makefile.am:
	* tests/utf8-pointer.c: Unit tests for g_utf8_pointer_to_offset
	and g_utf8_offset_to_pointer.

	* glib/gutf8.c (g_utf8_pointer_to_offset)
	(g_utf8_offset_to_pointer): Handle negative offsets, and use
	"stutter stepping" for going backwards. (#320638, Larry
	Ewing)
2005-11-17 15:50:31 +00:00
Matthias Clasen
d433419b14 Add Collation tests.
2005-10-05  Matthias Clasen  <mclasen@redhat.com>

	* Makefile.am: Add Collation tests.

	* tests/collate/*: Inputs and expected outputs for collation tests.

	* tests/run-collate-tests.sh: Script to run collation tests.

	* tests/unicode-collate.c (main): Rework slightly to make
	it usable in unit tests. Also test g_utf8_collate_key_for_filename().
2005-10-05 17:37:46 +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
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
399b0456ce 2.7.1 2005-06-30 21:01:58 +00:00
Matthias Clasen
748c230205 Add an mmap() wrapper called GMappedFile. (#148218, David Schleef, Behdad
2005-06-24  Matthias Clasen  <mclasen@redhat.com>

	Add an mmap() wrapper called GMappedFile. (#148218,
	David Schleef, Behdad Esfahbod)

	* glib/gmappedfile.[hc]: New files.

	* configure.in: Check for mmap.

	* glib/Makefile.am: Add new files.

	* glib/glib.symbols: Add new functions.

	* glib/glib.h: Include gmappedfile.h

	* tests/mapping-test.c: Tests for GMappedFile.

	* tests/Makefile.am: Add new file.
2005-06-25 03:38:32 +00:00
Matthias Clasen
604ad5fa3d 2.7.0 2005-06-10 15:48:25 +00:00
Matthias Clasen
348da88e27 Don't write out of bounds.
2005-02-08  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
	write out of bounds.

	* glib/goption.c (g_option_context_parse): Fix a
	one-too-short memory allocation.  (#166609, Nicolas Laurent)

	* tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
	MALLOC_CHECK_.

	* tests/option-test.c: Add a test for unkown short options.
2005-02-08 15:14:31 +00:00
Matthias Clasen
92a710ba28 Accept \r\n as line end. (#163030, Bastian Nocera)
2005-01-19  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as
	line end.  (#163030, Bastian Nocera)
	(g_key_file_load_from_data): Make -1 work as a size.

	* tests/keyfile-test.c: Some unit tests for the keyfile
	parser.

	* tests/Makefile.am (test_programs): Add keyfile-test.
2005-01-19 14:14:27 +00:00
Matthias Clasen
b8d9e050a4 Add utf8-validate.
2004-11-24  Matthias Clasen  <mclasen@redhat.com>

	* tests/Makefile.am (test_programs): Add utf8-validate.

	* tests/utf8-validate.c: Unit tests for g_utf8_validate().
2004-11-24 15:54:20 +00:00
Anders Carlsson
deee47edfd Add GOption.
2004-08-02  Anders Carlsson  <andersca@gnome.org>

	* glib/Makefile.am:
	* glib/glib.h:
	* glib/goption.c:
	* glib/goption.h:
	* tests/.cvsignore:
	* tests/Makefile.am:
	* tests/option-test.c:
	Add GOption.
2004-08-02 21:40:40 +00:00
Tor Lillqvist
fd64571b80 Update.
2004-03-06  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Update.

	* configure.in
	* Makefile.am
	* */Makefile.am: Drop the hand-written makefile.mingw(.in)
	files. They haven't been maintained in a long time. As several
	people have managed to build GLib for Win32 using the
	autoconfiscation mechanism, there is no real reason to even try to
	maintain the hand-written mingw makefiles.
2004-03-06 07:37:46 +00:00
Sebastian Wilhelmi
dbbb29f608 New files to implement atomic operations for different platforms. Fixes
2004-02-26  Sebastian Wilhelmi  <seppi@seppi.de>

	* glib/gatomic.c, glib/gatomic.h: New files to implement atomic
	operations for different platforms. Fixes bug #63621.

	* glib/glib.h: Include gatomic.h.

	* configure.in: Add test for assembler routines for atomic operations.

	* glib/Makefile.am: Add gatomic.c, gatomic.h.

	* tests/Makefile.am, tests/atomic-test.c: Unit test for atomic
	operations.

	* glib/glib-overrides.txt, glib/glib-sections.txt,
	glib/glib-docs.sgml, glib/tmpl/atomic_operations.sgml: Add docs
	for atomic operations.
2004-02-26 14:30:35 +00:00
Matthias Clasen
540d02ba8b Wrap waitpid() as a GSource. This is a partial implementation of the "Unix
Sat Feb 14 01:21:34 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/gmain.h:
	* glib/gmain.c (g_child_watch_source_new):
	* glib/gmain.c (g_child_watch_add):
	* glib/gmain.c (g_child_watch_add_full): Wrap waitpid() as a
	GSource. This is a partial implementation of the "Unix signal
	source".  (#50296, Jonathan R. Blandford)

	* configure.in: Add the necessary configury to typedef GPid
	appropriately.

	* tests/Makefile.am:
	* tests/child-test.c: Test child_watch sources.
2004-02-14 00:23:36 +00:00
Matthias Clasen
dd394749f9 New function which works like g_completion_complete(), but strips a
Thu Feb  5 00:56:28 2004  Matthias Clasen  <maclas@gmx.de>

	* glib/gcompletion.c (g_completion_complete_utf8): New function which
	works like g_completion_complete(), but strips a trailing incomplete
	UTF-8 character from the prefix.  (#133313, Theppitak Karoonboonyanan)

	* tests/completion-test.c (main): Some GCompletion tests.

	* tests/Makefile.am: Add completion-test.
2004-02-04 23:54:17 +00:00
Owen Taylor
c577a8f05d Add gobject/.
Thu Sep 25 15:01:37 2003  Owen Taylor  <otaylor@redhat.com>

        * tests/Makefile.am (SUBDIRS): Add gobject/.
2003-09-25 19:01:57 +00:00
Owen Taylor
2f4c3d8a6d Add g_markup_printf_escaped(), g_markup_vprintf_escaped().
Thu Sep 11 20:11:05 2003  Owen Taylor  <otaylor@redhat.com>

        * glib/gmarkup.c: Add g_markup_printf_escaped(),
        g_markup_vprintf_escaped().

        * tests/markup-escape-test.c (main): Test for
        g_markup_escape_text(), g_markup_printf_escaped().
2003-09-12 00:17:02 +00:00
Matthias Clasen
76cc9a77c6 Add tests for g_{get,set,unset}env(). 2003-07-28 19:30:05 +00:00
Matthias Clasen
5eb34aa96e test suite additions. 2003-07-26 09:24:46 +00:00
Matthias Clasen
25e8ae683e Remain silent when sucessful.
2003-05-28  Matthias Clasen  <maclas@gmx.de>

	* tests/patterntest.c: Remain silent when sucessful.

	* tests/Makefile.am: Add patterntest to make check.  (#113143,
	Zach Frey)
2003-05-27 22:12:40 +00:00
James Henstridge
c4391cbf37 require automake 1.7. Add calls to libtoolize and gtkdocize. Clean up some
2003-03-01  James Henstridge  <james@daa.com.au>

    * autogen.sh: require automake 1.7.  Add calls to libtoolize and
    gtkdocize.  Clean up some of the error messages.

    * configure.in: move version declaration to the top of the file
    (before AC_INIT), using M4 macros.
    GLIB_AC_DIVERT_BEFORE_HELP() calls no longer necessary, due to use
    of M4 macro expansion in help messages instead.
    Convert AC_ARG_WITH/AC_ARG_ENABLE calls to use AC_HELP_STRING to
    format help strings.  Use quadrigraphs to get square brackets to
    show correctly.
    Replace gtk-doc checks with a call to GTK_DOC_CHECK() macro.
    Use AC_CONFIG_COMMANDS([glibconfig.h], ...) to output
    glibconfig.h, so that "./config.status glibconfig.h" works.
    Add an extra AC_CONFIG_FILES call listing other files we want
    generated by config.status protected by an "if false" block.  This
    way automake generates the rules needed to rebuild the files for
    us.
    Add quotes in various places.

    * docs/reference/*/Makefile.am: convert to use the common
    gtk-doc.make file.  This localises the complexity to a single
    makefile fragment maintained with gtk-doc itself.

    * */Makefile.am: remove unneeded rules to build win32 files with
    config.status.  Automake now does this for us.
    Replace instances of @FOO@ with $(FOO) where appropriate -- this
    allows automake to do a better job checking the makefile.
    Add some files to DISTCLEANFILES where appropriate

    * Makefile.am: use the DISTCHECK_CONFIGURE_FLAGS variable to
    ensure that --enable-gtk-doc is passed to configure during a
    distcheck.  Remove the custom distcheck, since the standard one
    will now do.

    * gobject/Makefile.am: switch to BUILT_SOURCES, since that now
    works.
2003-03-04 10:10:48 +00:00
Tor Lillqvist
1f04f2cce2 Ignore the G_SPAWN_DO_NOT_REAP_CHILD flag, can't be meaninfully
2002-11-17  Tor Lillqvist  <tml@iki.fi>

	* glib/gspawn-win32.c (g_spawn_async_with_pipes): Ignore the
	G_SPAWN_DO_NOT_REAP_CHILD flag, can't be meaninfully implemented
	on Windows, at least not now. Always pass dont_wait as TRUE to
	do_spawn_with_pipes(). The semantics of the dont_wait parameter is
	very different from the semantics of the intermediate_child
	parameter to fork_exec_with_pipes() in the Unix version. This
	fixes a serious bug, g_spawn_async() in fact behaved
	synchronously.

	(do_spawn_with_pipes, do_spawn): Rename from
	fork_exec_with_pipes() and do_exec(), those names were from the
	Unix bersion, and misleading.

	(close_and_invalidate): Don't try to close invalid fds.

	* glib/gspawn.c (g_spawn_async_with_pipes): Add warning about
	Windows behaviour. There is no fork(), so the child_setup()
	function is in fact called in the parent.

	* glib/gspawn-win32-helper.c (WinMain): Insert spaces in argv
	debugging output.

	* tests/spawn-test-win32-gui.c: New file. Test program to be
	linked as a GUI application. Behaves differently depending on how
	invoked (by spawn-test).

	* tests/spawn-test.c (run_tests): On Win32, run the
	spawn-test-win32-gui program, too, in several ways, synchronously
	and asynchronously.

	* tests/Makefile.am: Corresponding change.
2002-11-17 03:52:55 +00:00
Owen Taylor
fc8fd6f8cb Default to --disable-gtk-doc, to avoid Jade setup hassles.
Sun Mar  3 21:09:24 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Default to --disable-gtk-doc, to avoid
        Jade setup hassles.

        * autogen.sh: Add --enable-gtk-doc.

        * configure.in: Default to --disable-static to go
        along with Pango, GTK+ where we need to do that for
        bin-compat reasons.

        * Makefile.am: Add a slightly modified distcheck rule
        that passes --enable-gtk-doc to the configure inside.
        (So that 'make dist' succeeds inside.)

        * configure.in *.pc.in **/Makefile.am m4macros/glib-2.0.m4
        tests/makefile.mingw.in: Switch everything over to
        glib-2.0.
2002-03-05 05:18:23 +00:00
Tor Lillqvist
c2794647a4 Add (undefined) HAVE_C99_VSNPRINTF.
2001-12-21  Tor Lillqvist  <tml@iki.fi>

	* config.h.win32.in: Add (undefined) HAVE_C99_VSNPRINTF.

	* glibconfig.h.win32.in: Add definition of G_HAVE_GROWING_STACK.

	* tests/Makefile.am: Rename the progs_LDADD, thread_LDADD and
	module_LDADD Make macros to progs_ldadd, thread_ldadd and
	module_ldadd. Newer automakes reserve macros named *_LDADD for
	the use as LDADDs for targets it knows.

	* glib/giowin32.c: (struct _GIOWin32Watch): 'callback' wasn't used
	here, either.

2001-12-21  Tor Lillqvist  <tml@iki.fi>

	* gobject.def: Add g_signal_get_invocation_hint.
2001-12-22 08:29:06 +00:00
Dan Winship
8049ab4876 Set this from libtool rather than hardcoding values for certain platforms.
* configure.in (G_MODULE_LDFLAGS): Set this from libtool rather
	than hardcoding values for certain platforms.

	* glib/libcharset/config.charset: Add a rule for NetBSD.

	* glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
	If LIBCHARSET_ALIAS_DIR is set, look for charset.aliases there.

	* tests/Makefile.am (TESTS_ENVIRONMENT): set LIBCHARSET_ALIAS_DIR
	so we don't depend on charset.aliases having been installed
2001-11-27 17:31:12 +00:00
Owen Taylor
4ab50f038b Version 11, interface, binary age 0.
Thu Nov 22 13:14:18 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in (GLIB_MICRO_VERSION): Version 11,
        interface, binary age 0.

        * NEWS: Updated.

        * tests/Makefile.am (libmoduletestplugin_[ab]_la_LDFLAGS):
        Add dummy -rpath argument. On some (but not all) platforms,
        libtool will only build a convenience library without this.
        (#63486, Dan Winship)

        * Makefile.am (EXTRA_DIST): Add README.in, INSTALL.in -
        autoconf-2.5x checks for 'make dist' in the tarball
        when you make distcheck.

        * glib/Makefile.am (EXTRA_DIST): Distribute
        makefile.msc/mingw.in, glib.rc.in.

        * tests/patterntest.c: Include string.h.

        * glib/gpattern.c (g_utf8_reverse): doc parsing fix.
2001-11-22 18:56:12 +00:00
Tor Lillqvist
da611e7cec Add back mainloop-test here, too.
2001-11-15  Tor Lillqvist  <tml@iki.fi>

	* tests/makefile.{mingw,msc}.in (TESTS): Add back mainloop-test
	here, too.

	* tests/Makefile.am: Remove leftover comment that claimed
	mainloop-test is removed.

2001-11-15  Tor Lillqvist  <tml@iki.fi>

	* gobject.def: Reflect recent changes.
2001-11-14 23:41:54 +00:00
Tor Lillqvist
90bb210e1e On Win32, create separate .exp file for module-test.o and link with that.
2001-11-04  Tor Lillqvist  <tml@iki.fi>

	* tests/Makefile.am: On Win32, create separate .exp file for
	module-test.o and link with that. Otherwise the GNU linker doesn't
	export the g_clash_func.
2001-11-03 23:19:25 +00:00
Owen Taylor
3481763c97 Recurse with may_block = FALSE, so we don't get into the pathology where
Thu Nov  1 21:48:43 2001  Owen Taylor  <otaylor@redhat.com>

        * tests/mainloop-test.c (recurser_idle): Recurse
        with may_block = FALSE, so we don't get into
        the pathology where the recurser_idle recurses
        for 10 iterations, and the only thing that is
        running is the recurser idle, which adds
        another recursion for each of those 10 iterations
        and....

        * tests/mainloop-test.c (create_crawler): Fix race
        condition where a crawler source could be destroyed
        before it was added to the crawler array.

        * test/Makefile.am: Add mainloop-test back.
2001-11-02 02:56:08 +00:00
Owen Taylor
2b4a6e0a88 Version 1.3.10, interface age, binary age = 0.
Wed Oct 24 11:10:54 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Version 1.3.10, interface age, binary age = 0.

        * NEWS: Updates

Thu Oct 25 12:01:41 2001  Owen Taylor  <otaylor@redhat.com>

        * tests/Makefile.am: Temporarily remove mainloop-test, since it
        prevents distcheck.
2001-10-25 18:51:58 +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
Tim Janik
92dfa96114 make struct _GPatternSpec and GMatchType private. (g_pattern_equal): new
Fri Oct 12 18:24:02 2001  Tim Janik  <timj@gtk.org>

        * glib/gpattern.[hc]: make struct _GPatternSpec and GMatchType
        private.
        (g_pattern_equal): new function to return equality of two patterns
        (required because GPatternSpec is private now).
        (g_pattern_spec_new): fix bug wrg wildcard counting which produced
        incorrect pattern specs (discovered by Matthias Clasen).
        optimized code so we just keep one compiled pattern string now.
        correctly canonicalize patterns. reduce string walks, optimize
        decision about MATCH_ALL vs. MATCH_ALL_TAIL.
        (g_pattern_match_string): call just g_pattern_match() with NULL
        reversed string.
        (g_pattern_match): allow NULL reversed strings now, reverse_dup
        strings on demand.

        * tests/patterntest.c (test_compilation): added an extended testcase
        for pattern matching from Matthias Clasen <matthiasc@poet.de>.

Sat Oct 13 06:58:23 2001  Tim Janik  <timj@gtk.org>

        * glib/tmpl/patterns.sgml: amended documentation.
2001-10-13 05:54:10 +00:00
Owen Taylor
0038581ed4 Implement.
Mon Aug 27 14:55:27 2001  Owen Taylor  <otaylor@redhat.com>

	* gsourceclosure.[ch] (g_source_set_closure): Implement.

	* gsourceclosure.[ch]: Add GType's for GIOChannel, GIOCondition.

Mon Aug 27 14:56:12 2001  Owen Taylor  <otaylor@redhat.com>

	* glib/gmain.h: Add closure_marshal/closure_callback
	fields to GSourceFuncs for use by g_source_set_closure().

	* glib/gmain.c glib/giounix.c glib/giowin32.c
	  glib/gmain.h: Export the SourceFuncs vtables so GObject
	can use them to figure out closure callbacks/marshallers
	for the default source types.
2001-09-03 22:13:16 +00:00
Alex Larsson
4e11203c54 New functions to convert between local pahtnames and file: uris.
2001-08-26  Alex Larsson  <alexl@redhat.com>

	* glib/gconvert.[ch] (g_filename_from_uri,
	g_filename_to_uri): New functions to convert
	between local pahtnames and file: uris.

	* tests/Makefile.am:
	* tests/uri-test.c:
	Tests for the new functions.
2001-08-26 21:39:47 +00:00
Owen Taylor
dff516edc8 Find test case for srcdir != builddir, miscellaneous cleanups.
Sun Aug 12 10:09:00 2001  Owen Taylor  <otaylor@redhat.com>

        * tests/iochannel-test.c (main): Find test case for
        srcdir != builddir, miscellaneous cleanups.

        * tests/Makefile.am (EXTRA_DIST): Distribute casefold.txt,
        casemap.txt iochannel-test-infile.

        * glib-2.0-uninstalled.pc.in: Fix for move of glib files
        into subdir. (Pointed out by Steve Baker)
2001-08-12 14:12:02 +00:00
Owen Taylor
4f96a13cba Use G_N_ELEMENTS rather than a custom macro.
Sun Jul  1 20:16:25 2001  Owen Taylor  <otaylor@redhat.com>

	* glib/guniprop.c (g_unichar_totitle): Use G_N_ELEMENTS
	rather than a custom macro.

	* glib/gen-unicode-tables.pl: Adapt to changes in table
	formats for Unicode 3.1

	* glib/gunicode.h glib/guniprop.c glib/gunichartables.h
	  glib/gen-unicode-tables.pl: Add case conversion functions
        g_utf8_casefold, g_utf8_strup, g_utf8_strdown.

	* tests/unicode-caseconv.c tests/gen-casefold-txt.pl
	  tests/gen-casemap-txt.pl tests/casefold.txt
	  tests/casemap.txt: Test cases for case conversion.

	* glib/gunicode.h glib/gunidecomp.[ch] glib/gunicomp.h
	  glib/gen-unicode-tables.pl: Add function to do Unicode
        normalization g_utf8_normalize().

	* tests/unicode-normalize.c: Test program for case conversion.

	* glib/gunicode.h glib/gunicollate.c: Add collation functions
	g_utf8_collate, g_utf8_collate_key.

	* test/unicode-collate.c: Test program for collation.

	* glib/gdate.c (g_date_fill_parse_tokens): Fix uninitialized
	variable.

	* glib/gdate.c (g_date_strftime) docs/Changes-2.0.txt:
	Make work with UTF-8 even if the locale isn't UTF-8 based.
	Still somewhat of broken, if the format string contains
	characters not representable in the current locale, will warn
	and not work.

	* glib/gdate.c: Use UTF-8 normalization and casefolding.
2001-07-02 00:49:21 +00:00
Owen Taylor
42a23950f5 Jun 29 13:36:39 2001 Owen Taylor <otaylor@redhat.com>
* glib/gstring.[ch] (g_string_set_size): Add function to
        allow setting the length of a string greater than the
        current length (for buffering usage)

        * glib/gstring.[ch]: Expose string->allocated_len, since
        that is useful when using GString simply as a buffer.
        (Renamed from string->alloc)

        * glib/giochannel.[ch] glib/giounix.c glib/giowin32.c:
        Major patch from Hidetoshi Tajima and Ron Steinke
        reworking GIOChannel to have:

         - Buffering
         - Sane and useful error reporting
         - Streaming encoding conversion with iconv
         - Convenience functions to read by lines or
           an entire file.

        Also fix remaining 64 bit cleanliness issues.

        * tests/iochannel-test.c tests/Makefile.am: Test case
        for IO channel streaming conversion. Still needs
        some fixing up.
2001-06-30 15:22: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
Sebastian Wilhelmi
b8ece629f1 Add test case for the g_qsort_with_data func. It works. This fixes bug
2001-05-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* tests/Makefile.am, tests/qsort-test.c: Add test case for the
	g_qsort_with_data func. It works. This fixes bug #52605.
2001-05-29 14:55:39 +00:00
Sebastian Wilhelmi
68e002beed Now that we check for a C++ compiler in configure.in anyway, I added a
2001-05-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* tests/Makefile.am, tests/cxx-test.C: Now that we check for a C++
	compiler in configure.in anyway, I added a test, that the GLib
	headers can be inclued into a C++ program. This fixes bug #52605.
2001-05-29 14:17:23 +00:00
Owen Taylor
c13277dc75 Exit with an error message that you should use pkg-config instead.
Tue Apr  3 12:38:16 2001  Owen Taylor  <otaylor@redhat.com>

	* glib-config-2.0.in: Exit with an error message that you
	should use pkg-config instead.

	* configure.in (PACKAGE): Require pkg-config.

	* tests/Makefile.am (EXTRA_DIST): Add utf8.txt.

	* configure.in (GLIB_MICRO_VERSION): Up MICRO to 3,
	leave interface/binary at 0.
2001-04-03 18:27:59 +00:00