Commit Graph

4094 Commits

Author SHA1 Message Date
Matthias Clasen
a151c97106 Make the child source test work
On my machine, this test was failing, because the timeout source
for quitting the inner mainloop was triggering repeatedly. Avoid
that by explicitly returning G_SOURCE_REMOVE from the callback.
2012-04-23 00:35:37 -04:00
Javier Jardón
14a7781873 docs: Fix "Since" markup 2012-04-23 02:23:31 +01:00
Matthias Clasen
6d51527ba0 Revert "tests: fix test on windows"
This reverts commit 79361eede2.

Just commenting out a test without an explanation does not
look right to me. This needs at the minimum a link to a
bug report or an explanation for why the behaviour is platform
dependent. If the test was just wrong, it needs to be removed,
not commented out. If there is a bug in the win32 implementation,
it needs to be fixed.
2012-04-19 13:25:26 -04:00
Andoni Morales Alastruey
79361eede2 tests: fix test on windows 2012-04-19 15:20:43 +02:00
Andoni Morales Alastruey
af7dc168f6 test: only check for defined errors 2012-04-19 15:20:31 +02:00
Alexander Larsson
2414d7d6a1 Fix build on win32
Some errnos don't exist on win32
2012-04-19 10:24:08 +02:00
Hannes Mueller
2ef1a8ef05 avoid warning in gutils.h when using gcc with -Wconversion
Old solution to avoid warning with gcc flag -Wconversion does not
work with gcc >=4.3 since the behaviour for that flag has been
changed, ref. http://gcc.gnu.org/wiki/NewWconversion. Now cast for
__builtin_clzl is required, which itself is declared to return int.

https://bugzilla.gnome.org/show_bug.cgi?id=619026
2012-04-17 18:24:41 +02:00
Colin Walters
3ac2930e1a tests: Fix race conditions in mainloop/invoke test
1) The test was using GCond incorrectly (it always needs a
   state variable)
2) The state assertion was racing with the thread; just delete it.
   All we're really trying to test here is that the invoke runs by the
   time the thread is gone, and the function has an assertion that
   it runs in the correct thread.

https://bugzilla.gnome.org/show_bug.cgi?id=674213
2012-04-16 14:14:29 -04:00
Colin Walters
3054ecf109 tests/mainloop: Add a test for recursive child sources
https://bugzilla.gnome.org/show_bug.cgi?id=669260
2012-04-16 13:47:27 -04:00
Dan Winship
bdbb531340 tests/mainloop: add a test for child sources
https://bugzilla.gnome.org/show_bug.cgi?id=669260
2012-04-16 13:47:27 -04:00
Dan Winship
a49568cecc gmain: block child sources when blocking the parent
When blocking a source that has child sources, we need to consider the
children blocked as well. Otherwise they will still trigger repeatedly
in an inner loop started from the parent source's callback.

https://bugzilla.gnome.org/show_bug.cgi?id=669260
2012-04-16 13:47:27 -04:00
Kalev Lember
aacd3469a5 tests/fileutils: Fix Windows build 2012-04-16 18:46:12 +03:00
Cosimo Cecchi
0f57e5c70c tests/date: force English locale running the GDateTime tests
The parsing test needs to make some assumption about the locale
representation of the string to be parsed, so we need to explicitly
override the locale here.
2012-04-16 10:53:43 -04:00
Colin Walters
f084b60377 build: Add --disable-modular-tests build option
This patch solves two problems:

First, it allows builders to optionally cut the circular dependency
between dbus and glib by disabling the modular tests (just like how
the tests can be disabled in dbus).

Second, the tests are entirely pointless to build if cross-compiling.

It also moves us slightly closer to the long term future we want where
the tests are a separate ./configure invocation and run against the
INSTALLED glib, not the one in the source tree. This would allow us to
run the tests constantly, not just when glib is built.

https://bugzilla.gnome.org/show_bug.cgi?id=667806
2012-04-15 11:15:54 -04:00
Giovanni Campagna
79013634ab Add version macros for 2.34
This marks the start of the new development cycle, and opens the
window for API additions.

https://bugzilla.gnome.org/show_bug.cgi?id=673659
2012-04-14 02:22:36 +02:00
Matthias Clasen
c1a83a4ac8 Fix distcheck
I forgot to dist a test script, and forgot to look for it
in srcdir instead of builddir.
2012-04-13 19:53:07 -04:00
Dan Winship
baf0ebf7b2 tests/mainloop: fix a race condition
Rather than depending on the machine's speed/load, just interlock
between the two threads properly.
2012-04-13 12:15:15 -04:00
Dan Winship
e0aa0ae8a2 tests/mainloop: use g_assert_cmpint(), for better error messages 2012-04-13 12:15:11 -04:00
Matthias Clasen
50aed1cc8f Make the markup-parse test independent of the locale
I added a setlocale call, because we need it for Unicode to
come out right; but I forgot to fix the locale, so we now
fail when comparing error messages to the expected (English)
result. Correct this by setting LANG explicitly to en_US.utf-8.

https://bugzilla.gnome.org/show_bug.cgi?id=669285
2012-04-13 09:39:48 -04:00
Cosimo Cecchi
c39d6954d3 tests: always use four digit years for date parsing tests
Or some system with different locale settings might get confused whether
a two digit year is to be parsed with regard to the current century or
as an absolute year.
2012-04-09 15:47:29 -04:00
Matthias Clasen
fb0951e67a spawn: Improve test coverage
Add a test that excercises the script execution code.
Unfortunately, much of this code only runs in the forked
child, and therefore its execution does not get caught
by gcov.
2012-04-08 10:24:52 -04:00
Matthias Clasen
b87e7ca729 mainloop: Improve test coverage 2012-04-08 10:24:51 -04:00
Matthias Clasen
2a1ea40920 utils: Improve test coverage
Add a test for some of our gettext variants.
2012-04-08 10:24:51 -04:00
Matthias Clasen
5951295937 fileutils: Improve test coverage
Add tests for corner cases of g_path_get_basename, and
for the errno-to-file-error conversion.
2012-04-08 10:24:51 -04:00
Matthias Clasen
550b69b963 sort: Improve test coverage
Test the code paths that sort 'large' items.
2012-04-08 10:24:51 -04:00
Matthias Clasen
06015064b8 date: Improve test coverage
Add tests that exercise g_date_order, g_date_compare, g_date_clamp,
and more of the date parsing functions.
2012-04-08 10:24:50 -04:00
Matthias Clasen
cbeecdc4ae convert: Improve test coverage
Add a test that excercises the 'no conversion' code path.
This uncovered that we don't treat errno properly in this path,
and as a consequence, the returned error code is unreliable.
2012-04-08 10:24:50 -04:00
Matthias Clasen
7d489acecc collate: Improve test coverage
Add some strings that exercise the non-ASCII parts of our
collation support.
2012-04-08 10:24:50 -04:00
Matthias Clasen
8db4b949b8 Always use '/' in test paths
It does not make much sense to use a platform-dependent
directory separator in these strings, since they are not
filesystem paths.

https://bugzilla.gnome.org/show_bug.cgi?id=673216
2012-04-06 20:52:15 -04:00
Dan Winship
a81a062202 gchecksum: fix strict-aliasing warnings in the MD5 code
https://bugzilla.gnome.org/show_bug.cgi?id=673191
2012-04-05 12:57:56 -04:00
Dieter Verfaillie
2655262889 Fix malformed GTK-Doc comment blocks: remove repeated comment blocks.
gio/gproxyresolver.h: GProxyResolver already documented in gio/giotypes.h
gio/gtlsbackend.h: GTlsBackend already documented in gio/gtlsbackend.c
gio/gtlsclientconnection.h: GTlsClientConnection already documented in gio/gtlsclientconnection.c
gio/gtlsconnection.h: GTlsConnection already documented in gio/gtlsconnection.c
gio/gunixconnection.h: GTcpConnection already documented in gio/giotypes.h
glib/gversion.h: GLIB_CHECK_VERSION already documented in glib/gversion.c

Found these thanks to the improved gobject-introspection
GTK-Doc comment block/annotation parser.
See https://bugzilla.gnome.org/show_bug.cgi?id=672254

https://bugzilla.gnome.org/show_bug.cgi?id=673385
2012-04-05 10:23:46 -03:00
Dieter Verfaillie
ce7f1a0789 Fix malformed GTK-Doc comment blocks: don't confuse GTK-Doc parsers.
Found these thanks to the improved gobject-introspection
GTK-Doc comment block/annotation parser.
See https://bugzilla.gnome.org/show_bug.cgi?id=672254

https://bugzilla.gnome.org/show_bug.cgi?id=673385
2012-04-05 10:23:45 -03:00
Dieter Verfaillie
0183c1f8a1 Fix malformed GTK-Doc comment blocks: invalid parameters and tags.
Found these thanks to the improved gobject-introspection
GTK-Doc comment block/annotation parser.
See https://bugzilla.gnome.org/show_bug.cgi?id=672254

https://bugzilla.gnome.org/show_bug.cgi?id=673385
2012-04-05 10:23:42 -03:00
Dieter Verfaillie
a058c1c13e Fix malformed GTK-Doc comment blocks: mutliline annotations are invalid.
Found these thanks to improved gobject-introspection GTK-Doc
comment block/annotation parser from:
https://bugzilla.gnome.org/show_bug.cgi?id=672254

https://bugzilla.gnome.org/show_bug.cgi?id=673385
2012-04-05 10:23:41 -03:00
Dieter Verfaillie
8e740f726f Fix malformed GTK-Doc comment blocks: add missing colons.
Found these thanks to improved gobject-introspection GTK-Doc
comment block/annotation parser from:
https://bugzilla.gnome.org/show_bug.cgi?id=672254

https://bugzilla.gnome.org/show_bug.cgi?id=673385
2012-04-05 10:23:39 -03:00
Matthias Clasen
588c2bacf7 Improve keyfile test coverage 2012-04-04 15:01:48 -04:00
Matthias Clasen
3eec7eeeaa Remove a bit of unused code
_g_utf8_strwidth is always called with max == -1, so remove the
parameter and update all callers.
2012-04-04 15:01:48 -04:00
Matthias Clasen
84a1b8aac8 Improve test coverage
Add tests for all the suffixes in g_format_size.
2012-04-04 15:01:48 -04:00
Dan Winship
51609ec943 tests/gdatetime: fix new_from_unix test
When creating a struct tm for "1990-01-01T00:00:00" to pass to
mktime(), we have to set tm_isdst to -1; leaving it set to 0 will
result in the wrong time being generated when run in a timezone where
January 1 would normally be tm_isdst==1 (ie, in southern hemisphere
DST-observing countries, like Australia).

https://bugzilla.gnome.org/show_bug.cgi?id=670254
2012-04-04 14:49:15 -04:00
Matthias Clasen
e51c3b4cfe Use new hashset api in the hash set tests 2012-04-02 09:09:11 -04:00
Matthias Clasen
e7c0f10ee0 Drop some unused PCRE sources
There is no point in compiling these, since we are not calling
any of the functions in them.
2012-04-01 23:08:42 -04:00
Antoine Jacoutot
829db4cec3 gthread-posix: fix typo in error message 2012-03-31 22:48:42 +02:00
Robert Ancell
4143842eb4 Add missing allow-none annotations for function parameters.
Found using:
find . -name '*.c' | xargs grep 'or %NULL' | grep ' \* @' | grep -v '@error' | grep -v allow-none
2012-03-31 20:34:28 +11:00
Bastien Nocera
9b0734a09c all: s/availible/available/ 2012-03-27 11:01:00 +02:00
Matthias Clasen
e927df7b7a Add a forgotten include guard
gbytes.h was missing the single-include guard.
2012-03-24 23:00:15 -04:00
Raphael Kubo da Costa
d2b7ee62f9 Make the `include' glib test case build on FreeBSD.
Defining _POSIX_C_SOURCE to 0 will make time.h not create the clockid_t
typedef used by some functions in pthread.h.

The right approach here is to set it to 199309L, which creates the
typedef on FreeBSD and doesn't set __USE_UNIX98 or __USE_XOPEN2K on
glibc, which is what the test is actually testing.

https://bugzilla.gnome.org/show_bug.cgi?id=672406
2012-03-22 11:02:07 -04:00
Chun-wei Fan
b08b301223 glib/gqsort.c: Fix C99ism/GCCism
-There were a number of variables that were declared in the middle of
 the block, so move these declarations to the start of the block
-There was a use of mempcpy, but it is a GCC extension, so use memcpy since
 we didn't care about the return value of the call to mempcpy.

https://bugzilla.gnome.org/show_bug.cgi?id=672095
2012-03-20 22:29:50 -04:00
Alexander Larsson
f23e7c3ef9 Fix the tests on win32
There was some unix-specific pathname handling in the test utils
which broke the css tests on win32.
2012-03-20 10:20:18 +01:00
Alexander Larsson
d0635dac52 Use g_unsetenv, not unsetenv
This fixed the win32 build
2012-03-20 10:19:42 +01:00
Matthias Clasen
2826ece6fc Fix distcheck
automake decided to complain about some more leftovers.
2012-03-19 16:58:48 -04:00
Matthias Clasen
6dfb50adf7 Don't return from a void function 2012-03-19 13:28:14 -04:00
Matthias Clasen
cb45176110 Fix a C99ism 2012-03-19 13:26:19 -04:00
Matthias Clasen
bd3063c742 Silence a compiler warning 2012-03-19 13:22:04 -04:00
Chun-wei Fan
bac0294c73 Update glibconfig.h.win32(.in)
Added the definitions below, as these #defines are needed for gqsort.c

#define ALIGNOF_GUINT32 4
#define ALIGNOF_GUINT64 8
#define ALIGNOF_UNSIGNED_LONG 4
2012-03-19 15:55:20 +08:00
Matthias Clasen
8c2434f01a Make inf testcase more forgiving
printf may produce "infinity" instead of "inf".

https://bugzilla.gnome.org/show_bug.cgi?id=668973
2012-03-17 23:43:52 -04:00
Sebastian Dröge
57878d6042 Use __builtin_bswap* for GUINT*_SWAP_LE_BE if building with GCC
https://bugzilla.gnome.org/show_bug.cgi?id=531901
2012-03-17 23:28:48 -04:00
Dieter Verfaillie
e2b47ae9e0 Fix out of tree build for MinGW/MSYS
When building with MinGW/MSYS with srcdir != builddir the build fails:
- to locate the generated .def files
- creating libglib-gdb.py
- creating libgobject-gdb.py

Solved this by explicitly instructing these files to be generated
in $(builddir)/...

https://bugzilla.gnome.org/show_bug.cgi?id=653167
2012-03-17 23:10:01 -04:00
Colin Walters
6833385c5a gmain: Use sig_atomic_t for list of pending Unix signals
Pointed out by: Simon McVittie <simon.mcvittie@collabora.co.uk>

https://bugzilla.gnome.org/show_bug.cgi?id=671997
2012-03-16 16:15:16 -04:00
David Benjamin
b0739f2223 Continue searching in PATH on ENODEV and ETIMEDOUT
Synchronize the error-handling logic from glibc. Users with networked
filesystems in their PATH may hit ETIMEDOUT.

https://bugzilla.gnome.org/show_bug.cgi?id=672201
2012-03-16 11:49:30 -04:00
Alexander Larsson
a43dd7435a Make g_array_sort* methods use a stable sort
Also, remove previous comments about sort stability in g_array_sort docs,
as the method that was explained does not work. Adds a new comment
about this.

https://bugzilla.gnome.org/show_bug.cgi?id=672095
2012-03-16 16:04:36 +01:00
Alexander Larsson
839957f275 Make g_qsort_with_data stable, based on glibc msort
We need a stable sort, and we might as well always use it rather
than have multiple sort versions. This picks up the glibc
merge sort implementation which it uses by default for qsort,
except we don't fall back to non-stable quicksort in some cases
like glibc

https://bugzilla.gnome.org/show_bug.cgi?id=672095
2012-03-16 16:04:36 +01:00
Ryan Lortie
fbbdf98668 g_log: mask log level before checking prefix flags
We check if the log level is in the "prefixed" list by checking it
against the g_log_msg_prefix bitfield.

Unfortunately we were failing to mask by G_LOG_LEVEL_MASK first, so if
the FATAL bit was set (for example) then it would never match.  This was
the case for g_error().

https://bugzilla.gnome.org/show_bug.cgi?id=672026
2012-03-13 20:15:21 -04:00
Ryan Lortie
545736c0fb glib-init: restore default for G_MESSAGES_PREFIXED
In the glib-init shuffle this ended up being set to no messages prefixed
by default.  Fix that so that we have prefixes back.

https://bugzilla.gnome.org/show_bug.cgi?id=672026
2012-03-13 20:15:21 -04:00
Ryan Lortie
063f03fa76 glib-init: fix obvious buffer size mismatch 2012-03-13 20:15:21 -04:00
Ryan Lortie
8084047ee3 logging test: unset G_MESSAGES_DEBUG
Having G_MESSAGES_DEBUG=all in the environment will fail this testcase.
2012-03-09 10:29:32 -05:00
Mark Janossy
265f265c67 deprecated threads: fix race in GStaticRecMutex
The very last access to the 'depth' field of GStaticRecMutex in
g_static_rec_mutex_unlock_full() was being performed after dropping the
implementation mutex for the last time.

This allowed the lock to be dropped an additional time if it was
acquired in another thread right at that instant (which is somewhat
likely, since another thread could have just been woken up by the lock
being released).

https://bugzilla.gnome.org/show_bug.cgi?id=670846
2012-03-09 09:54:23 -05:00
Alexander Larsson
3cf1ad1881 Use G_DEFINE_CONSTRUCTOR for the glib_init constructor
No need to hand-roll this when we have a macro version.
2012-03-05 15:06:22 +01:00
Matthias Clasen
c0c2cbe0ae Fix distcheck 2012-03-04 22:28:28 -05:00
Shota Akiyama
5f280eb6a8 glib/gmacros.h: Fix up attribute to avoid namespace collisions
https://bugzilla.gnome.org/show_bug.cgi?id=670751
2012-03-03 13:29:29 -05:00
Dan Winship
deea0e39ba gspawn: rename G_SPAWN_ERROR_2BIG to be more bindings-friendly
Rename G_SPAWN_ERROR_2BIG to G_SPAWN_ERROR_TOO_BIG (while keeping the
old name for compatibility), to fix problems with language bindings
where the old name translates into something that would be
syntactically invalid due to starting with a digit.

https://bugzilla.gnome.org/show_bug.cgi?id=671025
2012-03-03 13:26:43 -05:00
Jörn Magens
00f1e1f5c2 GSequence: add note about lookup requiring sorting
g_sequence_lookup() only works on sorted sequences, but it's quite easy
to create unsorted sequences.  Add a note to the documentation that the
sequence must be sorted in order for g_sequence_lookup() to work.

https://bugzilla.gnome.org/show_bug.cgi?id=670969
2012-03-02 09:08:30 -05:00
Colin Walters
80611295ab g_uri_unescape_segment: Mention (allow-none)/%NULL in documentation 2012-02-29 13:09:41 -05:00
Christian Persch
51f1297a6e Fixup docs comment 2012-02-27 16:25:50 +01:00
Christian Persch
d2c37669f2 regex: unicode: Update to Unicode 6.1.0
Update some more PCRE tables to Unicode 6.1.0. Should be completely
updated now.
2012-02-27 13:27:13 +01:00
Matthias Clasen
96c98ce62e Improve the wording of the message for G_UNAVAILABLE
The version number we have here is the one the function appeared
in, not the max-allowed version. Therefore 'unavailable before
VERSION' makes more sense than 'unavailable for VERSION'.
2012-02-27 06:54:16 -05:00
Matthias Clasen
4995ef4dd7 Add a 'these are private' note for the version macros 2012-02-27 00:32:13 -05:00
Matthias Clasen
76175ab9ed Improve documentation around deprecations 2012-02-27 00:18:47 -05:00
Emmanuele Bassi
550fcaddf7 Add versioned deprecation annotation
We start from GLib 2.26.

https://bugzilla.gnome.org/show_bug.cgi?id=670542
2012-02-27 00:00:06 -05:00
Emmanuele Bassi
34aeeb7d64 Add flexible API version boundaries
There are cases when it should be possible to define at compile time
what range of functions and types should be used, in order to get,
or restrict, the compiler warnings for deprecated or newly added
types or functions.

For instance, if GLib introduces a deprecation warning on a type in
version 2.32, application code can decide to specify the minimum and
maximum boundary of the used API to be 2.30; when compiling against
a new version of GLib, this would produce the following results:

  - all deprecations introduced prior to 2.32 would emit compiler
    warnings when used by the application code;
  - all deprecations introduced in 2.32 would not emit compiler
    warnings when used by the application code;
  - all new symbols introduced in 2.32 would emit a compiler warning.

Using this scheme it should be possible to have fairly complex
situations, like the following one:

  assuming that an application is compiled with:
    GLIB_VERSION_MIN_REQUIRED = GLIB_VERSION_2_30
    GLIB_VERSION_MAX_ALLOWED  = GLIB_VERSION_2_32

  and a GLib header containing:

    void function_A (void) GLIB_DEPRECATED_IN_2_26;
    void function_B (void) GLIB_DEPRECATED_IN_2_28;
    void function_C (void) GLIB_DEPRECATED_IN_2_30;
    void function_D (void) GLIB_AVAILABLE_IN_2_32;
    void function_E (void) GLIB_AVAILABLE_IN_2_34;

  any application code using the above functions will get the following
  compiler warnings:

    function_A: deprecated symbol warning
    function_B: deprecated symbol warning
    function_C: no warning
    function_D: no warning
    function_E: undefined symbol warning

This means that it should be possible to gradually port code towards
non-deprecated API gradually, on a per-release basis.

https://bugzilla.gnome.org/show_bug.cgi?id=670542
2012-02-26 23:58:41 -05:00
Christian Persch
d70634526d regex: Remove --disable-regex option
https://bugzilla.gnome.org/show_bug.cgi?id=622149
2012-02-26 22:22:56 -05:00
Christian Persch
989c466296 regex: Remove pcre_ucd.c 2012-02-26 22:09:05 -05:00
Christian Persch
706b72db21 regex: Use glib for unicode data
Use g_unichar_type() and g_unichar_get_script() instead of pcre tables.
2012-02-26 22:09:05 -05:00
Christian Persch
75dffb99b3 regex: Remove obsolete patch 2012-02-26 22:09:05 -05:00
Christian Persch
8e8ab99bad regex: unicode: Update to Unicode 6.1.0 2012-02-26 22:09:05 -05:00
Christian Persch
735e4a6a6a regex: Remove obsolete makefile fragments
The update.sh script doesn't work with current PCRE, so these are obsolete.
2012-02-26 22:09:04 -05:00
Christian Persch
afa3375210 regex: Use glib memory allocator 2012-02-26 22:09:04 -05:00
Christian Persch
38309dc482 regex: Remove obsolete patch 2012-02-26 22:09:04 -05:00
Christian Persch
d02f6393df regex: Use g_ascii_is[x]digit 2012-02-26 22:09:04 -05:00
Christian Persch
8aadf6b3c9 regex: Remove obsolete patch
PCRE doesn't even contain the patched file anymore.
2012-02-26 22:09:04 -05:00
Christian Persch
3225b24cb5 regex: Remove obsolete patches
Upstream PCRE has removed the relocations that these patches were fixing;
the patches are obsolete.
2012-02-26 22:09:03 -05:00
Christian Persch
a40523b7f2 regex: Update included PCRE to 8.30 2012-02-26 22:09:03 -05:00
Christian Persch
8280a8ee36 unicode: tests: More script to/from ISO-15924 tests 2012-02-26 21:24:08 -05:00
Christian Persch
58b4cdd38b unicode: tests: Add tests for new scripts 2012-02-26 21:24:08 -05:00
Christian Persch
d133d22932 unicode: tests: Add tests for new line break classes 2012-02-26 21:24:08 -05:00
Christian Persch
2a2f3c4176 unicode: Regenerate tables from Unicode 6.1.0 2012-02-26 21:24:07 -05:00
Christian Persch
d1da9ff080 unicode: Regenerate gscripttable.h for Unicode 6.1.0 2012-02-26 21:24:07 -05:00
Christian Persch
3554026b39 unicode: tests: Remove U+27CD from is-undefined test
It's assigned in Unicode 6.1.0.
2012-02-26 21:24:07 -05:00
Christian Persch
48e01af6f1 unicode: Add new line break classes from Unicode 6.1.0 2012-02-26 21:24:07 -05:00
Christian Persch
fb574834c1 unicode: Add new scripts from Unicode 6.1.0 2012-02-26 21:24:07 -05:00
Stefan Sauer
2161bf254f goption: try to be helpful in goption args/flag checks
When complaining about ill defined GOptionEntries include the name of the option
group and entry in the warning.
2012-02-26 21:22:10 +01:00
John Ralls
47475dbe6a [Bug 529806] Cannot build in 64-bit Mac OS X due to libiconv 2012-02-24 17:04:52 -08:00
Filippo Della Betta
462f7f5a4d Added better support of G_STRFUNC for Visual Studio platform
https://bugzilla.gnome.org/show_bug.cgi?id=670128
2012-02-24 16:21:45 -05:00
Richard Hughes
eece6cb9c3 Fix up 'Since:' for g_mapped_file_new_from_fd()
It was introduced in 2.31.0, not 2.30.x
2012-02-23 10:34:46 +00:00
Dan Winship
98a70df486 gthread-posix: fix order of arguments in g_thread_abort() message 2012-02-22 11:38:43 -05:00
Dan Winship
88182d375e gasyncqueue: fix a 32bit overflow in g_async_queue_timed_pop
also, add a test for g_async_queue_timed_pop() and
g_async_queue_timeout_pop() to tests/asyncqueue.c

https://bugzilla.gnome.org/show_bug.cgi?id=669670
2012-02-22 11:36:08 -05:00
David King
2ca6c475ea docs: Fix g_async_queue_timeout_pop_unlocked typo 2012-02-21 01:10:55 +01:00
David King
912ac79041 docs: Add some missing G_TOKEN_* descriptions 2012-02-21 01:10:54 +01:00
David King
708d4178ce docs: Fix g_key_file_load_from_file error parameter 2012-02-21 01:10:54 +01:00
Matthias Clasen
dbc01d3090 Don't rely on /bin/sh
Another Fedora UsrMove victim !
2012-02-21 00:26:19 +01:00
Christian Persch
eafb108caf gbytes: Add G_BEGIN/END_DECL guards
Bug #670138.
2012-02-15 17:46:31 +01:00
Christian Persch
26f238e85d Plug a mem leak in g_environ_unsetenv
And clarify the memory allocation requirement of the string arrays passed to
g_environ_{,un}setenv().

==9458== 10 bytes in 1 blocks are definitely lost in loss record 16 of 39
==9458==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
==9458==    by 0x4221A1F: vasprintf (vasprintf.c:78)
==9458==    by 0x40C6065: g_vasprintf (gprintf.c:314)
==9458==    by 0x409D894: g_strdup_vprintf (gstrfuncs.c:509)
==9458==    by 0x409D8C9: g_strdup_printf (gstrfuncs.c:535)
==9458==    by 0x40672E9: g_environ_setenv (genviron.c:156)
==9458==    by 0x80490E7: test_environ_array (environment.c:78)
==9458==    by 0x40A3DB5: test_case_run (gtestutils.c:1662)
==9458==    by 0x40A40B2: g_test_run_suite_internal (gtestutils.c:1715)
==9458==    by 0x40A417C: g_test_run_suite_internal (gtestutils.c:1726)
==9458==    by 0x40A42F9: g_test_run_suite (gtestutils.c:1771)
==9458==    by 0x40A3441: g_test_run (gtestutils.c:1319)
==9458==    by 0x80493F1: main (environment.c:108)

Bug #669412.
2012-02-15 17:45:44 +01:00
Dan Winship
ca05902a58 Add G_GNUC_BEGIN/END_IGNORE_DEPRECATIONS
Add new macros to disable -Wdeprecated-declarations around a piece of
code, using the C99 (and GNU89) _Pragma() operator. Replace the
existing use of #pragma for this in gio, and suppress the warnings in
gvaluearray.c as well.

https://bugzilla.gnome.org/show_bug.cgi?id=669671
2012-02-15 09:54:38 -05:00
Giovanni Campagna
d240b88315 GKeyFile: fix annotation of g_key_file_load_from_data
(array) without (element-type) means "array of the same type as
the C type", so gchar* with (array) is interpreted as an array of
strings. Since GKeyFiles must be UTF-8 encoded anyway, just
annotate it as a string.

https://bugzilla.gnome.org/show_bug.cgi?id=658484
2012-02-14 19:05:08 +01:00
Dan Winship
dd553a2ba3 gasyncqueue: deprecate GTimeVal-based methods, add relative-delay ones
https://bugzilla.gnome.org/show_bug.cgi?id=669670
2012-02-13 09:09:08 -05:00
Matthias Clasen
8cb48f644d Fix a parameter name mismatch
gtk-doc gets unhappy if parameters aren't named the same in
headers, sources and doc comments.
2012-02-10 21:09:39 -05:00
Christophe Fergeau
6d3b31a533 Fix g_hash_table_foreach crash with NULL hash table
When G_DISABLE_ASSERT is not defined, g_hash_table_foreach and
g_hash_table_find dereferences the hash table argument before
checking if it's NULL. This causes a crash when one of this function
is mistakenly called with a NULL argument instead of returning
with a warning through g_return_if_fail.
2012-02-10 10:03:38 +01:00
Dan Winship
daf78764e5 gthread-win32: update for g_get_monotonic_time() changes
g_cond_wait_until() was calling GetSystemTimeAsFileTime() to get the
current time, which is no longer what g_get_monotonic_time() returns.

https://bugzilla.gnome.org/show_bug.cgi?id=669329
2012-02-09 06:48:12 -05:00
Ravi Sankar Guntur
90dbaca924 glib/tests: mainloop - fix a mem leak.
https://bugzilla.gnome.org/show_bug.cgi?id=669372

Signed-off-by: Ravi Sankar Guntur <ravi.g@samsung.com>
2012-02-08 09:36:12 -05:00
Ravi Sankar Guntur
bd79c00537 glib/tests: fix memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=669372

Signed-off-by: Ravi Sankar Guntur <ravi.g@samsung.com>
2012-02-08 09:23:54 -05:00
Dan Winship
a8f516f61e glib/tests/option-context: remove unused tests
These tests were written, but then never used since it was decided to
add g_warnings() to goption.c in the cases they were supposed to be
testing. So anyway, just remove them.
2012-02-08 08:46:03 -05:00
Giovanni Campagna
1faed130dc gtimezone: consider a leading : in TZ environment variable
When set to represent a zoneinfo file, TZ may start with :, therefore
glib needs to check it and ignore the first char when building the
resulting filename, or it won't be found.
Also, the path could be absolute, in which case it is wrong to
append /usr/share/timezone

https://bugzilla.gnome.org/show_bug.cgi?id=664237
2012-02-06 17:26:30 +01:00
Christian Persch
7e9aed94de Revert "Plug a mem leak in g_environ_unsetenv"
This reverts commit 2f4b46e378, which was
pushed accidentally.
2012-02-05 20:00:16 +01:00
Christian Persch
2f4b46e378 Plug a mem leak in g_environ_unsetenv
==9458== 10 bytes in 1 blocks are definitely lost in loss record 16 of 39
==9458==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
==9458==    by 0x4221A1F: vasprintf (vasprintf.c:78)
==9458==    by 0x40C6065: g_vasprintf (gprintf.c:314)
==9458==    by 0x409D894: g_strdup_vprintf (gstrfuncs.c:509)
==9458==    by 0x409D8C9: g_strdup_printf (gstrfuncs.c:535)
==9458==    by 0x40672E9: g_environ_setenv (genviron.c:156)
==9458==    by 0x80490E7: test_environ_array (environment.c:78)
==9458==    by 0x40A3DB5: test_case_run (gtestutils.c:1662)
==9458==    by 0x40A40B2: g_test_run_suite_internal (gtestutils.c:1715)
==9458==    by 0x40A417C: g_test_run_suite_internal (gtestutils.c:1726)
==9458==    by 0x40A42F9: g_test_run_suite (gtestutils.c:1771)
==9458==    by 0x40A3441: g_test_run (gtestutils.c:1319)
==9458==    by 0x80493F1: main (environment.c:108)

Bug #669412.
2012-02-05 19:57:09 +01:00
Ravi Sankar Guntur
59a0134de8 fix memory leak in g_bookmark_file_parse()
https://bugzilla.gnome.org/show_bug.cgi?id=669334

Signed-off-by: Ravi Sankar Guntur <ravi.g@samsung.com>
2012-02-04 10:01:19 -05:00
Matthias Clasen
3758b41e08 Add a test to show that GMarkup properly handles > in content 2012-01-31 22:02:22 -05:00
Matthias Clasen
a6bafde5f2 Dist gconstructor.h 2012-01-30 17:54:33 -05:00
Alexander Larsson
968f4e8d79 Move constructor macros to an internal header and into generated code
With this we're not longer exporting the constructor headers, which means
we're not tying ourselves to a macro that might need special tweaking on
a compiler-by-compiler basis.
2012-01-30 16:59:27 +01:00
Antoine Jacoutot
e43a98c000 goption: implement platform_get_argv0() for OpenBSD
https://bugzilla.gnome.org/show_bug.cgi?id=669024
2012-01-30 16:17:06 +01:00
Ravi Sankar Guntur
7486cd946a comments/docs: Fix couple of typos
https://bugzilla.gnome.org/show_bug.cgi?id=668857
2012-01-28 07:52:56 +01:00
Ryan Lortie
9bfde4a53f GKeyFile: allow loading from empty strings
GKeyFile supports empty files and also supports loading from the string
"", but will fail with a critical if you try:

  - explicit length == 0
  - data == NULL

length == 0 should always be valid, and data == NULL should be valid in
the case that length == 0, so add some testcases for those and fix the
code up to allow them.

https://bugzilla.gnome.org/show_bug.cgi?id=668756
2012-01-26 14:40:34 -05:00
Dan Winship
1542e898f9 gmain: fix a bunch of comment typos in g_get_monotonic_time()
And remove a comment about Windows in the fallback implementation that
no longer applies, since there's now a separate Windows-specific
implementation.
2012-01-26 09:54:50 -05:00
Andoni Morales Alastruey
59881a65b2 keyfile tests: Fix windows build using portable g_setenv 2012-01-26 14:44:50 +01:00
Matthias Clasen
ef159af00f Use G_SOURCE_CONTINUE/REMOVE internally
Now that we have these macros, we should use them.
This commit covers everything in glib/.
2012-01-25 16:15:18 -05:00
Ryan Lortie
12060df9f1 GHash: add note about randomness in hashing
To clarify our statements about being robust against outside attackers
degrading the performance of your hashtable.
2012-01-25 10:09:09 -05:00
Matthias Clasen
e94a5f4f83 GKeyFile: make list separators effective again
We must preserve the list_separator across clear;init
sequences.
2012-01-25 07:32:39 -05:00
Matthias Clasen
aea9951ef0 Fix the new test 2012-01-25 07:32:20 -05:00
Matthias Clasen
e50d7e065c Add a test for g_key_file_set_list_separator
A recent 'harmless' fix broke it...
2012-01-25 07:26:58 -05:00
Guillaume Desmottes
ca949756de GArray: initialize the clear_func pointer
https://bugzilla.gnome.org/show_bug.cgi?id=668650
2012-01-25 12:04:12 +01:00
Ravi Sankar Guntur
e9725d1656 Macro to insert a new GNode "after" the given sibling.
https://bugzilla.gnome.org/show_bug.cgi?id=626258

Signed-off-by: Ravi Sankar Guntur <ravi.g@samsung.com>
2012-01-24 23:41:23 -05:00
Emmanuele Bassi
c602a5f887 array: Add a clear function
Like GPtrArray has a "free function" that can be used to free memory
associated to each pointer in the array, GArray would benefit from
having a "clear function" that can be used to clear the content of
each element of the array when it's removed, or when the entire array
is freed.

https://bugzilla.gnome.org/show_bug.cgi?id=667243
2012-01-24 23:25:38 -05:00
Matthias Clasen
030b3f25e3 GHashTable: Add a note about hash collisions 2012-01-24 21:11:13 -05:00
Ryan Lortie
26d4feae0c keyfile tests: Add testcase for bug #634232
Add a testcase based on one by Alfredo Dal'Ava Júnior (the original
reporter of the bug).

https://bugzilla.gnome.org/show_bug.cgi?id=634232
2012-01-24 17:17:08 -05:00
Ryan Lortie
fe10b2c966 GKeyFile: remove approximate_size optimisation
This is micro-optimisation of the worst kind and it's causing obscure
bugs in edge cases.  Better just remove this entirely.

https://bugzilla.gnome.org/show_bug.cgi?id=634232
2012-01-24 17:16:48 -05:00
Dan Winship
b6a8dec558 g_date_time_format: fix output in non-UTF-8 locales
In non-UTF-8 locales, the translations and nl_langinfo() return values
must be converted to UTF-8 before being returned to the caller.
Likewise, when making a recursive call to expand a format like '%x',
the format string must first be converted to UTF-8.

https://bugzilla.gnome.org/show_bug.cgi?id=668250
2012-01-20 19:50:48 -05:00
Dan Winship
3691194b35 g_base64_encode_step: clarify break_lines behavior a bit
break_lines uses LFs, not CRLFs like you might expect (since it's
designed for email-related use), but we can't change that now since
the caller has to allocate the output buffer and so the
number-of-bytes-output is part of the ABI. So, just document that.

https://bugzilla.gnome.org/show_bug.cgi?id=668158
2012-01-18 09:02:21 -05:00
Kjartan Maraas
3fe710c0b5 Fix broken build with -Wundefined 2012-01-17 17:10:19 +01:00
Patrick Welche
decac50c15 Protect call to pthread_condattr_setclock with define.
While here update pthread_attr_setstacksize test to use AC_LINK_IFELSE
and avoid an unused variable in glib/tests/thread.c.

https://bugzilla.gnome.org/show_bug.cgi?id=667790
2012-01-15 23:41:27 -05:00
Simon McVittie
6d9f874330 g_error_new_valist, g_error_copy: warn if domain is 0 or message is NULL
Neither of those usages is valid, but there's a lot of use of 0 as a
domain "in the wild", so we can't g_return_if_fail yet.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=660371
2012-01-15 23:21:03 -05:00
Matthias Clasen
186c15fc87 GError: small documentation addition
Document that out variables are not guaranteed to be set to
defined values if an error is thrown. Inspired by bug 658315
2012-01-15 23:18:09 -05:00
Matthias Clasen
5377c0de01 Beef up Libs.private in glib-2.0.pc
This should help getting static builds working on mingw.
Based on a patch by Volker Grabsch, bug 619126.

At the same time, drop the unnecessary GLIB_RT_LIBS variable;
we are already adding -lrt to G_THREAD_LIBS.
2012-01-15 22:15:10 -05:00