2489 Commits

Author SHA1 Message Date
Christian Persch
47d6d6a451 Bug 560569 – gkeyfile doesn't use the set list_separator in some cases
svn path=/trunk/; revision=7673
2008-11-23 21:15:57 +00:00
Christian Dywan
00769cf7f1 Bug 558672 – NULL key lookup using g_hash_table_lookup_extended()
2008-11-04  Christian Dywan  <christian@imendio.com>

	Bug 558672 – NULL key lookup using g_hash_table_lookup_extended()

	* glib/ghash.c:
	Clarify g_hash_table_lookup_extended

svn path=/trunk/; revision=7644
2008-11-04 17:01:19 +00:00
Christian Dywan
215c04ce6c Bug 558513 – g_warn_if_fail FIXME in gtestutils
* glib/gtestutils.c (g_test_log_send):
Turn g_assert into g_warn_if_fail as advised

svn path=/trunk/; revision=7637
2008-10-31 09:56:19 +00:00
16:11:14 Tim Janik
0ffa76b9e9 added G_PASTE() and G_STATIC_ASSERT(), based on patches by Christian
2008-10-29 16:11:14  Tim Janik  <timj@gtk.org>

        * glib/gmacros.h: added G_PASTE() and G_STATIC_ASSERT(), based on
        patches by Christian Persch and Christian Dywan. Fixes:
        Bug 558381 - Add support for compile time assertions


svn path=/trunk/; revision=7633
2008-10-29 15:14:06 +00:00
Joseph Pingenot
a73301b3e6 changed "#GHashTableIterator" to "#GHashTableIter" in the
* glib/ghash.c: changed "#GHashTableIterator" to "#GHashTableIter"
        in the documentation-comments above g_hash_table_foreach_remove()
        and g_hash_table_foreach_steal() to correctly name and link to
        GHashTableIter.  This affects the GNOME documentation website
        as well, so further steps are likely necessary beyond this subproject.
* ChangeLog modified to reflect this.

-Joseph (solarion)

svn path=/trunk/; revision=7631
2008-10-27 22:59:42 +00:00
Matthias Clasen
c6404e8329 Accept short data
svn path=/trunk/; revision=7625
2008-10-24 04:10:50 +00:00
Matthias Clasen
05fb3a25e5 Bug 556921 – gpoll.h breaks hal compilation
2008-10-23 Matthias Clasen <mclasen@redhat.com>

        Bug 556921 – gpoll.h breaks hal compilation

        * glib/gpoll.h: Include gtypes.h. Pointed out by Anis Elleuch


svn path=/trunk/; revision=7623
2008-10-24 03:55:29 +00:00
Michael Natterer
94f082cb80 Bug 556186 – gpoll.h breaks gmain.h inclusion
2008-10-19  Michael Natterer  <mitch@imendio.com>

	Bug 556186 – gpoll.h breaks gmain.h inclusion

	* glib/gpoll.h: different fix: disallow direct inclusion
	unconditionally again but make an exception if included from
	gmain.h to maintain compatibility.


svn path=/trunk/; revision=7615
2008-10-19 20:38:14 +00:00
Christian Persch
0879e4aabb Bug 556186 – gpoll.h breaks gmain.h inclusion
svn path=/trunk/; revision=7599
2008-10-14 10:11:29 +00:00
Christian Persch
630f89fb1a Bug 555311 – format not a string literal and no format arguments
svn path=/trunk/; revision=7597
2008-10-13 12:43:37 +00:00
Matthias Clasen
6310f898b8 Fix gcc warnings
svn path=/trunk/; revision=7585
2008-10-10 04:54:51 +00:00
Christian Persch
c973369e31 Bug 555314 – mem leak in gmarkup
svn path=/trunk/; revision=7579
2008-10-08 20:54:35 +00:00
Tor Lillqvist
c7501c8223 Bug 554790 - g_convert() misbehaves with winiconv versions
2008-10-08  Tor Lillqvist  <tml@novell.com>

	Bug 554790 - g_convert() misbehaves with winiconv versions

	* glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
	explicitly check for and reject 8bit chars. MultiByteToWideChar()
	doesn't, at least not on XP.


svn path=/trunk/; revision=7578
2008-10-08 20:35:39 +00:00
Matthias Clasen
57d48592db Properly include gmacros.h
svn path=/trunk/; revision=7575
2008-10-07 18:52:18 +00:00
Behdad Esfahbod
af866931b6 Bug 555309 – giochannel breaks on error Patch from Christian Persch
2008-10-06  Behdad Esfahbod  <behdad@gnome.org>

        Bug 555309 – giochannel breaks on error
        Patch from Christian Persch

        * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
        (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
        Don't shadow err.  Oops!


svn path=/trunk/; revision=7574
2008-10-06 22:57:49 +00:00
Christophe Fergeau
6a19b99a9d Bug 555224 – Improve g_format_size_for_display doc
* glib/gfileutils.c: change g_format_size_for_display API doc to
explicitly say that the returned string has to be freed. Change
spelling of "newly allocated" to "newly-allocated" in g_file_read_link
API doc to be more consistent with what is done in that file.

svn path=/trunk/; revision=7572
2008-10-06 18:50:39 +00:00
Behdad Esfahbod
ef4d522b9b Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
2008-09-30  Behdad Esfahbod  <behdad@gnome.org>

        Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X

        * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
        (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
        (g_io_unix_get_flags), (g_io_channel_new_file):
        Like mclasen says: "well, thats the way errno works...,
        save it or loose it".  Save errno.


svn path=/trunk/; revision=7565
2008-09-30 20:40:31 +00:00
Tor Lillqvist
23a4ae82e5 Makefile.decl Bypass gtester related stuff on Windows.
2008-09-30  Tor Lillqvist  <tml@novell.com>

	* Makefile.decl
	* glib/tests/Makefile.am: Bypass gtester related stuff on Windows.


svn path=/trunk/; revision=7564
2008-09-30 14:46:45 +00: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
Dan Winship
5c53925ed0 Bug 553447 $(Q#|(B g_assert_no_error()
* glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
	assert that a GError is not set, or else is set to a particular
	error.

	* glib/gtestutils.c (g_assertion_message_error): utility for
	those macros

	* glib/tests/keyfile.c:
	* tests/asyncqueue-test.c:
	* tests/bookmarkfile-test.c:
	* tests/convert-test.c:
	* tests/file-test.c: Use g_assert_error/g_assert_no_error

svn path=/trunk/; revision=7555
2008-09-27 01:43:29 +00:00
Dan Winship
ea0970e9ca make this a "const gpointer" rather than a gconstpointer to avoid warnings
* glib/gthreadpool.c (wakeup_thread_marker): make this a "const
	gpointer" rather than a gconstpointer to avoid warnings later

	* glib/pcre/pcre_ucp_searchfuncs.c:
	* glib/pcre/pcre_valid_utf8.c: #include "config.h"

	* glib/tests/printf.c (test_d): fool gcc into not warning about
	some printf format strings that we know are dubious

svn path=/trunk/; revision=7552
2008-09-26 16:00:45 +00:00
Matthias Clasen
b60040d9ed Bug 553857 – gbacktrace.h requires signal.h
2008-09-26  Matthias Clasen  <mclasen@redhat.com>

        Bug 553857 – gbacktrace.h requires signal.h

        * glib/gbacktrace.h: Include signal.h for raise().
        Pointed out by Sebastien Bacher



svn path=/trunk/; revision=7548
2008-09-26 14:33:48 +00:00
Matthias Clasen
93d9e7abf4 Bug 553724 – python interpretter path not patched in correctly
2008-09-26  Matthias Clasen  <mclasen@redhat.com>

        Bug 553724 – python interpretter path not patched in correctly

        * glib/Makefile.am: Fix the sed magic to replace python.



svn path=/trunk/; revision=7546
2008-09-26 14:28:25 +00:00
Matthias Clasen
40e192abf2 Add more docs
svn path=/trunk/; revision=7545
2008-09-26 14:05:03 +00:00
Matthias Clasen
8d88b840a2 Move docs
svn path=/trunk/; revision=7544
2008-09-26 13:55:51 +00:00
Tor Lillqvist
fc542a462a Bug 553820 - gpoll.c: undeclared identifier
2008-09-25  Tor Lillqvist  <tml@novell.com>

	Bug 553820 - gpoll.c: undeclared identifier

	* glib/gmain.c
	* glib/gpoll.c: Make the g_poll() function non-static also on
	Windows. Prefix an underscore to the g_main_poll_debug variable
	and make it non-static in gmain.c so that it can be used in
	gpoll.c. Add back missing variable declaration.


svn path=/trunk/; revision=7542
2008-09-25 19:59:49 +00:00
Tor Lillqvist
0ed8b94bfe Just ignore the child_setup function, never call it. The is no situation
2008-09-25  Tor Lillqvist  <tml@novell.com>

	* glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
	Just ignore the child_setup function, never call it. The is no
	situation in which it could be useful on Windows. Do print a
	warning, like before.

	* glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
	in documentation.


svn path=/trunk/; revision=7540
2008-09-25 08:05:41 +00:00
Sven Herzberg
ee685b003e Be a little more explcit in the docs. Includes Owen's requested changes.
2008-09-24  Sven Herzberg  <sven@imendio.com>

	Be a little more explcit in the docs. Includes Owen's requested
	changes.

	* glib/gmain.c: improved documentation for g_source_attach() and
	g_source_destroy()


svn path=/trunk/; revision=7539
2008-09-24 13:44:27 +00:00
Michael Natterer
db1ff156d5 #include <glib/gpoll.h>
2008-09-23  Michael Natterer  <mitch@imendio.com>

	* glib/glib.h: #include <glib/gpoll.h>

	* glib/gpoll.h: #error out if gpoll.h is included directly.

	* glib/gpoll.c: remove trailing whitespace.


svn path=/trunk/; revision=7537
2008-09-23 18:56:31 +00:00
Dan Winship
ac68024ec1 Move this out of gmain.c and make it part of the public API. (Part of Bug
* glib/gpoll.c (g_poll): Move this out of gmain.c and make it part
	of the public API. (Part of Bug 505361 - gunixinputstream.c
	assumes poll() available.)

svn path=/trunk/; revision=7535
2008-09-23 16:32:30 +00:00
Tor Lillqvist
f911ead382 Fix embarrassing bug: I was passing an incorrect third parameter to
2008-09-23  Tor Lillqvist  <tml@novell.com>

	* glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
	passing an incorrect third parameter to memmove(), had forgotten
	to multiply by the size of the table entry. Just use a for loop
	instead, clearer. Odd I didn't notice when testing this code.


svn path=/trunk/; revision=7533
2008-09-23 15:35:12 +00:00
Hans Petter Jansson
991b625aea Rewrite most of GHashTable to use open addressing with quadratic probing
2008-09-19  Hans Petter Jansson  <hpj@novell.com>

	Rewrite most of GHashTable to use open addressing with quadratic
	probing instead of chaining. This has the potential to reduce memory
	fragmentation significantly, while being slightly faster due to
	better locality and no need to call alloc/free functions for nodes.
	Benchmarks suggest it also uses less memory overall.

	* glib/ghash.c (prime_mod): Table of suitable primes for
	initial-probe distribution.
	(g_hash_table_set_shift): New function.
	(g_hash_table_find_closest_shift): New function.
	(g_hash_table_set_shift_from_size): New function.
	(g_hash_table_lookup_node_for_insertion): New function.
	(g_hash_table_lookup_node): Rewritten to return node index instead of
	pointer, use quadratic probe on flat table, and not return insertion
	data. The latter saves some computation for read-only lookups.
	(g_hash_table_remove_node): Rewrite to take a pointer directly to the
	node structure to remove, and clear that. Remove unlinking code.
	(g_hash_table_remove_all_nodes): Rewrite to not clear nodes
	individually, but en masse using memset () after potentially calling
	notify functions.
	(iter_remove_or_steal): Use new data structure and algorithm. Vastly
	simplified - now just a call to g_hash_table_remove_node ().
	(g_hash_table_resize): New resize code, re-indexing with new prime
	and cleaning up tombstones.
	(g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
	than 1/4 load excluding tombstones, and no more than 15/16 load
	including tombstones. These numbers are the results of a lot of
	benchmarking with multiple complex applications, and should not be
	changed lightly.
	(g_hash_table_iter_next)
	(g_hash_table_lookup)
	(g_hash_table_lookup_extended)
	(g_hash_table_insert_internal)
	(g_hash_table_remove_internal)
	(g_hash_table_foreach_remove_or_steal)
	(g_hash_table_foreach)
	(g_hash_table_find)
	(g_hash_table_get_keys)
	(g_hash_table_get_values): Use new data structure and algorithm,
	fairly trivial changes.


svn path=/trunk/; revision=7518
2008-09-20 04:05:11 +00:00
Tor Lillqvist
bc8e1dd8c1 glib/gutils.c (_glib_get_dll_directory) Be a bit less restrictive, look
2008-09-19  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (_glib_get_dll_directory)
	* glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
	restrictive, look for the helper programs in the same folder where
	the GLib DLL is, not necessarily in a "bin" subfolder of the top
	GLib installation folder.


svn path=/trunk/; revision=7511
2008-09-19 10:20:41 +00:00
Tor Lillqvist
6af6a8dab0 time_t is 64 bits in all the newer Microsoft C libraries, not just 64-bit
2008-09-16  Tor Lillqvist  <tml@novell.com>

	* glib/gtimer.c (g_time_val_to_iso8601): time_t is 64 bits in all
	the newer Microsoft C libraries, not just 64-bit ones. So to avoid
	crash if compiled with newer MSVSes, use a separate time_t
	variable in all cases on Windows.


svn path=/trunk/; revision=7496
2008-09-15 22:52:12 +00:00
Tor Lillqvist
d4ad716a05 Define G_BREAKPOINT() also for 64-bit MSVC, using the __debugbreak()
2008-09-16  Tor Lillqvist  <tml@novell.com>

	* glib/gbacktrace.h: Define G_BREAKPOINT() also for 64-bit MSVC,
	using the __debugbreak() intrinsic.


svn path=/trunk/; revision=7495
2008-09-15 22:19:38 +00:00
Tor Lillqvist
e55fca9533 glib/gutils.h Deprecate G_WIN32_DLLMAIN_FOR_DLL_NAME(),
2008-09-13  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.h
	* glib/gwin32.h: Deprecate G_WIN32_DLLMAIN_FOR_DLL_NAME(),
	g_win32_get_package_installation_directory() and
	g_win32_get_package_installation_subdirectory() as their
	documentation has warned for a while. Sorry that I forgot to do
	this before 2.18.0.

	* glib/gwin32.c (g_win32_get_package_installation_directory):
	Print a warning if a non-NULL package parameter is passed to this
	function, as that is deprecated usage, as the documentation says.


svn path=/trunk/; revision=7480
2008-09-13 20:23:17 +00:00
Matthias Clasen
dc85674b57 Bug 548321 – <string.h> is not included in gi18n-lib.h
2008-09-11  Matthias Clasen  <mclasen@redhat.com>

        Bug 548321 – <string.h> is not included in gi18n-lib.h

        * glib/gi18n.h:
        * glib/gi18n-lib.h: Include string.h, since strlen is used in
        the macros. Pointed out by Ignacio Casal Quinteiro


svn path=/trunk/; revision=7455
2008-09-11 16:48:44 +00:00
Matthias Clasen
6848d2578d Documentation improvements
svn path=/trunk/; revision=7453
2008-09-11 04:21:17 +00:00
Matthias Clasen
8f85da0b5e Add required includes
svn path=/trunk/; revision=7452
2008-09-10 22:39:05 +00:00
Matthias Clasen
0b890c6298 Bug 551228 – G_STRFUNC on recent Sun compiler should be expanded to
2008-09-09  Matthias Clasen  <mclasen@redhat.com>

        Bug 551228 – G_STRFUNC on recent Sun compiler should be expanded to
        __func__ rather than '???'

        * glib/gmacros.h: Don't use glibconfig.h defines in gmacros.h,
        as the comment up top says. Instead look at __STDC_VERSION__.
        Problem reported by Lin Ma.


svn path=/trunk/; revision=7451
2008-09-10 03:21:42 +00:00
Matthias Clasen
b36ea0b1c7 Bug 523463 – Core dump in gmain.c:2482:IA__g_main_context_check()
2008-09-09  Matthias Clasen  <mclasen@redhat.com>

        Bug 523463 – Core dump in gmain.c:2482:IA__g_main_context_check()

        * glib/gmain.c (g_main_context_check): Be robust against setting
        event fields on the fly, as e.g. happens in linc. Tracked down
        by Paul Smith, fix proposed by Owen Taylor.

svn path=/trunk/; revision=7447
2008-09-09 06:04:21 +00:00
Christian Dywan
2201cae29a Bug 550433 – g_test_init doesn't recognize --help
* glib/gtestutils.c (parse_args): Add detailed --help output

svn path=/trunk/; revision=7442
2008-09-08 08:25:29 +00:00
Ryan Lortie
920f3bffb3 Bug 549771 – improved .gitignore for glib
2007-09-02  Ryan Lortie  <desrt@desrt.ca>

        Bug 549771 – improved .gitignore for glib

        * docs/reference/.gitignore:
        * docs/reference/gio/.gitignore:
        * docs/reference/gobject/tmpl/.gitignore:
        * gio/.gitignore:
        * gio/tests/.gitignore:
        * glib/.gitignore:
        * glib/libcharset/.gitignore:
        * glib/tests/.gitignore:
        * gmodule/.gitignore:
        * gobject/.gitignore:
        * gobject/tests/.gitignore:
        * po/.gitignore:
        * tests/.gitignore: new files
        * .gitignore: remove 'build' (since it's part of glib now), add more
        useful things.


svn path=/trunk/; revision=7432
2008-09-02 18:40:39 +00:00
Matthias Clasen
11cc2e2aeb Fix up docs
svn path=/trunk/; revision=7424
2008-09-02 16:48:40 +00:00
Michael Natterer
ed2bbc43cc add g_return_if_fail (checksum != NULL)
2008-09-02  Michael Natterer  <mitch@imendio.com>

	* glib/gchecksum.c (g_checksum_reset): add
	g_return_if_fail (checksum != NULL)


svn path=/trunk/; revision=7423
2008-09-02 14:07:27 +00:00
Paolo Borelli
31000d64f9 svn:ignore files of last patch
svn path=/trunk/; revision=7420
2008-09-01 09:42:11 +00:00
Paolo Borelli
e6eb809599 Bug 550040 - Move GString, rand and printf tests to the unit test
2008-09-01  Paolo Borelli  <pborelli@katamail.com>

	Bug 550040 - Move GString, rand and printf tests to the unit test
	framework

	* tests/printf-test.c:
	* tests/rand-test.c:
	* tests/string-test.c:
	Removed

	* glib/tests/printf.c:
	* glib/tests/rand.c:
	* glib/tests/string.c:
	Added

	* tests/Makefile.am:
	* glib/tests/Makefile.am:
	Updated for the above


svn path=/trunk/; revision=7419
2008-09-01 09:31:40 +00:00
Emmanuele Bassi
e701ea96b6 Bug 550096 – GBookmarkFile parser is not forward compatible
2008-08-31  Emmanuele Bassi  <ebassi@gnome.org>

	Bug 550096 – GBookmarkFile parser is not forward compatible

	* glib/gbookmarkfile.c:
	(parse_bookmark_element), (parse_application_element),
	(parse_mime_type_element), (parse_icon_element): Relax the
	attributes checking of the GBookmarkFile parser for the
	attributes that the desktop bookmark file specification
	defines and controls. This allows adding new attributes to
	the existing elements in newer versions without breaking the
	parser in older ones.

svn path=/trunk/; revision=7418
2008-08-31 19:53:21 +00:00
Ryan Lortie
2edf928499 Fixup for test case in previous commit.
2008-08-28  Ryan Lortie  <desrt@desrt.ca>

        Fixup for test case in previous commit.

        * glib/tests/strfuncs.c: don't fail if we can't open the test data.
        This happens if $(builddir) != $(srcdir) (like when doing 'make
        distcheck').  Quick workaround for now until #549783 can be fixed.


svn path=/trunk/; revision=7415
2008-08-29 06:02:47 +00:00
Ryan Lortie
2cf0f4853a [REVERT] Bug 548612 – g_strstr_len() should use memmem when available
2008-08-28  Ryan Lortie  <desrt@desrt.ca>

        [REVERT] Bug 548612 – g_strstr_len() should use memmem when available

        * glib/gstrfuncs.c (g_strstr_len): fix off-by-one memory access error
        * glib/tests/strfuncs.c (test_bounds): add some new test cases that
        would catch problems like this
        * glib/tests/4096-random-bytes: test data for the previous
        * glib/tests/Makefile.am: add previous to EXTRA_DIST


svn path=/trunk/; revision=7414
2008-08-28 23:03:24 +00:00