4271 Commits

Author SHA1 Message Date
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
Dan Winship
673396fb65 gmain: fix adding a child source to an already-attached source
Adding a child source to an already-attached parent source would
crash, because we were passing the parent's context when setting the
child's priority.
2012-01-15 09:39:14 -05:00
Benjamin Otte
a6e149e41f array: return_if_fail() if element size is 0
This is particular useful for:
  g_array_new (sizeof (MyStruct), FALSE, FALSE);
because the correct incantation is
  g_array_new (FALSE, FALSE, sizeof (MyStruct));
and these warnings will trigger in the first situation.
2012-01-14 01:15:16 +01:00
Alexander Larsson
9ef4554a0b Add macros to handle constructor functions on the compilers that support it
This is only supported on some compilers, so we define G_HAS_CONSTRUCTORS
when it is supported. However, when it is supported we guarantee that
both constructors and destructors work, in executables as well as shared
libraries (including runtime unloading of shared libraries).

Usage is a bit unorthodox, as some compilers need to use #pragma to
implement constructors, and #pragma can't be used in macros.

The canonical way to use this:

  #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
  #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor)
  #endif
  G_DEFINE_CONSTRUCTOR(my_constructor)

  static void my_constructor (void)
  {
    ...

  #ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA
  #pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(my_destructor)
  #endif
  G_DEFINE_DESTRUCTOR(my_destructor)

  static void my_destructor (void)
  {
    ...
2012-01-13 16:02:47 +01:00
Philip Withnall
e98f17e5cf Bug 666700 — Add some missing (allow-none) annotations
Add some missing (allow-none) annotations to GContentType, GIcon and
GHashTable methods.

Closes: bgo#666700
2012-01-11 20:48:29 +00:00
Ravi Sankar Guntur
0ed2cdb0d9 Use g_queue_free_full() convenience function.
https://bugzilla.gnome.org/show_bug.cgi?id=667331

Signed-off-by: Ravi Sankar Guntur <ravi.g@samsung.com>
2012-01-09 19:27:39 -05:00
Matthias Clasen
ddf9633d95 fix a compiler warning 2012-01-09 15:27:07 -05:00
Matthias Clasen
39dc681fc7 Realign the hash set example with added api
Change the name of set_insert to set_add, to better match the
newly added g_hash_table_add.
2012-01-09 15:23:25 -05:00
Dan Vrátil
7678b10703 Fix GHashTable GDB pretty printing (bug #667420) 2012-01-09 09:29:20 +01:00
Jasper St. Pierre
d141940bc6 gthread-posix: Remove misleading documentation comments
g_thread_init() has done nothing since 2.32, so while the function
still can be used if "g_thread_init() has not yet been called",
it won't do nothing in that case, it will just perform normally.
2012-01-06 14:41:08 -05:00
Jasper St. Pierre
021e116f05 gbacktrace: g_get_prgname () isn't called for a NULL argument
https://bugzilla.gnome.org/show_bug.cgi?id=658871
2012-01-06 14:41:08 -05:00
Ryan Lortie
21d2c49f82 minor fixup to last commit 2012-01-06 10:25:03 -05:00
Ryan Lortie
752f0cac15 GHashTable: new 'add' and 'contains' APIs
These are both convenience APIs that make it slightly nicer to use
GHashTable as a set (which is something we document as officially
supported).
2012-01-06 10:18:41 -05:00
Simon McVittie
2fe964eeb1 Mention g_test_undefined() when documenting assert_failed, assert_stderr
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=666116
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Colin Walters <walters@verbum.org>
2012-01-05 15:47:50 +00:00
Javier Jardón
e3d53d5529 glib/*: Use g_slist_free_full() convenience function 2012-01-05 04:57:48 +01:00
Matthias Clasen
1b919d2e56 Clarify g_utf8_strlen docs a bit 2012-01-04 00:10:11 -05:00
Paolo Borelli
d64b4c4887 Add a testcase for an old regex bug.
Add a testcase for bug #455640, which was fixed in PCRE versions newer
than 7.2.
2012-01-03 21:17:48 +01:00
Javier Jardón
2ae83e116b glib/*: Use g_list_free_full() 2012-01-03 16:53:47 +01:00
Stef Walter
411259ddd3 gvariant: Never break out of g_variant_iter_loop
* Document how to break out of g_variant_iter_loop style loops.

https://bugzilla.gnome.org/show_bug.cgi?id=664069
2012-01-02 18:34:08 +01:00
Simon McVittie
1425aa664d GBitLock: turn assumptions of g_futex_int_address into a static assertion
We'll probably never encounter a platform where these fail, but that's
what static assertions are for...

https://bugzilla.gnome.org/show_bug.cgi?id=548954
2012-01-02 12:23:01 -05:00
Ryan Lortie
fc731de929 gthread.h: avoid anonymous union
This is a GNU extension.

https://bugzilla.gnome.org/show_bug.cgi?id=666978
2012-01-02 11:39:01 -05:00
Matthias Clasen
8558ae9ad4 Correct some Since tags
As pointed out in bug 666951, g_mkdtemp and g_mkdtemp_full
were only added in 2.30.
2011-12-29 11:57:42 -05:00
Ravi Sankar Guntur
8ca2647c74 Fix to handle '\v' (vertical tab) by g_strescape() and g_strcompress().
fix enables g_strescape() and g_strcompress() to handle '\v' along with other
special characters - '\b', '\f', '\n', '\r', '\t', '\'.

https://bugzilla.gnome.org/show_bug.cgi?id=664830

Signed-off-by: Ravi Sankar Guntur <ravi.g@samsung.com>
2011-12-27 21:49:19 -05:00
Simon McVittie
993de34a77 Add undefined/no-undefined mode options to GTester
https://bugzilla.gnome.org/show_bug.cgi?id=666116
2011-12-27 17:51:11 -05:00