Commit Graph

11588 Commits

Author SHA1 Message Date
Simon McVittie
fa5ff39559 Add deterministic tests for the API of GWeakRef
These don't address the thread-safety, but do address basic use.

https://bugzilla.gnome.org/show_bug.cgi?id=548954
2012-01-02 12:23:18 -05:00
Ryan Lortie
46c2f570da GWeakRef: add a weak GObject reference believed to be thread-safe
This patch is a joint work with Simon McVittie.

https://bugzilla.gnome.org/show_bug.cgi?id=548954
2012-01-02 12:23:15 -05:00
Simon McVittie
28c87a5594 g_object_weak_ref, g_object_add_weak_pointer: document non-thread-safety
Transparent access to a weak pointer from the thread performing the
weak -> strong conversion is incompatible with thread-safety: that
thread will have to do something special. This is GNOME#548954.

https://bugzilla.gnome.org/show_bug.cgi?id=548954
2012-01-02 12:23:11 -05: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
William Hua
a07e9a5fb2 nextstep gsettings backend: whitespace police 2012-01-01 22:01:47 -05:00
William Hua
edd2aff575 thread-safe nextstep gsettings backend
simplified key reset logic
2012-01-01 21:59:39 -05:00
William Hua
9c10083844 GSettings: nextstep settings backend 2012-01-01 19:40:56 -05:00
Xan Lopez
00f43b22e5 ginetaddressmask: plug leak
==24706== 52 bytes in 1 blocks are definitely lost in loss record 7,248 of 13,092
==24706==    at 0x4A074CD: malloc (vg_replace_malloc.c:236)
==24706==    by 0x70E9F5F: standard_malloc (gmem.c:85)
==24706==    by 0x70E9FE8: g_malloc (gmem.c:159)
==24706==    by 0x71018EC: g_slice_alloc (gslice.c:1003)
==24706==    by 0x710192B: g_slice_alloc0 (gslice.c:1029)
==24706==    by 0x7068526: g_type_create_instance (gtype.c:1872)
==24706==    by 0x705067B: g_object_constructor (gobject.c:1835)
==24706==    by 0x704FE47: g_object_newv (gobject.c:1699)
==24706==    by 0x7050612: g_object_new_valist (gobject.c:1816)
==24706==    by 0x704F894: g_object_new (gobject.c:1531)
==24706==    by 0x6F0F2F0: g_inet_address_new_from_bytes (ginetaddress.c:459)
==24706==    by 0x6F5D703: remove_network (gnetworkmonitornetlink.c:256)
==24706==    by 0x6F5DD80: read_netlink_messages (gnetworkmonitornetlink.c:386)
==24706==    by 0x6F2D5CA: socket_source_dispatch (gsocket.c:2505)
==24706==    by 0x70E1D45: g_main_dispatch (gmain.c:2513)
==24706==    by 0x70E2A06: g_main_context_dispatch (gmain.c:3050)
==24706==    by 0x70E2BE9: g_main_context_iterate (gmain.c:3121)
==24706==    by 0x70E2CAD: g_main_context_iteration (gmain.c:3182)
==24706==    by 0x6F60A05: g_application_run (gapplication.c:1599)
==24706==    by 0x42D011: main (ephy-main.c:472)

https://bugzilla.gnome.org/show_bug.cgi?id=667098
2012-01-01 19:01:14 +01:00
Yaron Shahrabani
5e4188101e Updated Hebrew translation. 2011-12-30 10:47:56 +02:00
Chun-wei Fan
a2e1541cda config.h.win32.in: Cleanups
-Make the contents of the preconfigured config.h.win32(.in) more like the
 contents of config.h.in
-Correct the sizing of void* on x64 platforms (which should be 8, unlike
 4 on x86-32 platforms)
2011-12-30 15:27:31 +08: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
Matthias Clasen
030bf82340 Some minor updates of building.sgml
https://bugzilla.gnome.org/show_bug.cgi?id=664830
2011-12-27 21:49:19 -05:00
Matthias Clasen
a3860d8d77 Some minor updates of HACKING 2011-12-27 18:10:26 -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
Simon McVittie
fa4792c35e various tests: do not provoke SIGTRAP with -m no-undefined
Some of the GLib tests deliberately provoke warnings (or even fatal
errors) in a forked child. Normally, this is fine, but under valgrind
it's somewhat undesirable. We do want to follow fork(), so we can check
for leaks in child processes that exit gracefully; but we don't want to
be told about "leaks" in processes that are crashing, because there'd
be no point in cleaning those up anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=666116
2011-12-27 17:51:09 -05:00
Simon McVittie
5cb29d7909 Clarify documentation of fast/slow/thorough and quiet/verbose tests
It turns out that there is no middle setting between fast and
slow/thorough, but there *is* a middle setting between quiet and verbose.

https://bugzilla.gnome.org/show_bug.cgi?id=666116
2011-12-27 17:51:04 -05:00
Matthias Clasen
643ad9f6c3 Remove another unused AC_DEFINE
Nothing was using the HAVE_GCOV define.
2011-12-27 17:45:40 -05:00
Matthias Clasen
7cc9e10cce Drop unused AC_SUBST
DISABLE_MEM_POOLS is only used as define.
2011-12-27 17:20:36 -05:00
Matthias Clasen
bc85e6ed51 Remove a bashism 2011-12-27 17:15:44 -05:00
Matthias Clasen
a176008826 Drop a lot of dead configury for threads
Much of this became obsolete by the recent rewrite of our
threading support.
2011-12-27 17:12:39 -05:00
Matthias Clasen
8cea99741b Don't put documentation in glibconfig.h 2011-12-27 16:22:13 -05:00
Matthias Clasen
31f0ad3f35 Make glibconfig.h include guards consistent 2011-12-27 16:18:19 -05:00
Matthias Clasen
d09800d86e Remove a commented-out macro 2011-12-27 16:16:24 -05:00
Matthias Clasen
4576a459fc Remove obsolescent AC_HEADER_STDC macro
We only used the resulting define in one place, and really,
these headers just have to be around or its not worth trying.
2011-12-27 15:55:04 -05:00
Thomas Hindoe Paaboel Andersen
49a4de3ea4 docs: g_atexit: do not point in a direction for where to find details
https://bugzilla.gnome.org/show_bug.cgi?id=666804
2011-12-27 10:18:41 -05:00
Åsmund Skjæveland
89a832250b Updated Norwegian Nynorsk translation 2011-12-26 17:15:32 +01:00
Matthias Clasen
cc03b3cdea Don't leak references to the menus 2011-12-24 23:01:17 -05:00
Matthias Clasen
f077127d01 Add a test for ids on submenu and section elements
The test checks that menus which are created via
<submenu id=...> or <section id=...> end up in the objects
hash table.
2011-12-24 22:59:10 -05:00
Matthias Clasen
37efbf4354 Menu markup: Support ids on submenu and section elements
This was supposed to work, but didn't.
Bug 666595.
2011-12-24 22:58:16 -05:00
Benjamin Otte
c4fc258424 docs: Clarify non-NUL requirement in g_utf8_validate()
UTF8 validation is not about your character on a dating site, so don't
talk about meeting.

https://bugzilla.gnome.org/show_bug.cgi?id=666803
2011-12-24 14:26:24 +01:00
Dan Winship
3f3e141ec8 Add GSocketClient::event, for tracking socket client status
This can be used for debugging, or for progress UIs ("Connecting to
example.com..."), or to do low-level tweaking on the connection at
various points in the process.

https://bugzilla.gnome.org/show_bug.cgi?id=665805
2011-12-22 15:44:24 -05:00
Dan Winship
57f279988c Add g_socket_connection_connect(), etc
Previously it was more or less assumed that GSocketConnections were
always connected, although this was not enforced. Make it explicit
that they don't need to be, and add methods to connect them, and
simplify GSocketClient by using those methods.

https://bugzilla.gnome.org/show_bug.cgi?id=665805
2011-12-22 13:22:25 -05:00
Chun-wei Fan
e121d46b25 Update GIO Visual C++ projects
Link to zlib1.lib for release builds and zlib1d.lib for debug builds-
this is to be consistent across the board for the GTK+ stack (and many
other opensource code linking to the ZLib DLL on Windows)
2011-12-22 20:18:11 +08:00
Chun-wei Fan
550fee44a9 Update Visual C++ property sheets
"Install" the newly-introduced gremoteactiongroup.h header.
2011-12-22 18:49:01 +08:00
Ryan Lortie
6e7da987b4 GSettingsBackend: allow floating refs from read()
Use g_variant_take_ref() to allow for backends to return floating
GVariant instances from their read() implementations.
2011-12-22 00:24:20 -05:00
rodrigorivascosta
1b03377442 Bug 666551-Fix a few dangling pointers
When removing an item from the list, check the next one's my_owner,
and fix it accordingly. And take this case into account when last
of the list is deleted.

Also, assign NULL to 'my_owner' in g_thread_xp_WakeConditionVariable.
2011-12-22 10:51:31 +08:00
Chun-wei Fan
76bc1ab280 glib/tests/private.c: Fix compilation on Windows
-process.h must be included for _beginthreadex
-Use a cast to HANDLE on _beginthreadex to silence warnings on different
 types
2011-12-22 10:39:05 +08:00
Kjartan Maraas
cb71b03e2f Updated Norwegian bokmål translation 2011-12-21 22:22:05 +01:00
Cosimo Cecchi
adff60ed63 menu: documentation fixes
g_menu_new_section() does not exist, the comment meant
g_menu_item_new_section().
2011-12-21 12:36:19 +01:00
Ryan Lortie
557da16507 GObject: do checks on interface property install
Add some checks to g_object_interface_install_property() similar to
those in g_object_class_install_property().

https://bugzilla.gnome.org/show_bug.cgi?id=666616
2011-12-20 19:45:57 -05:00
Ryan Lortie
b237187109 GObject: require READ or WRITE on property install
g_object_class_install_property() currently lets you install properties
that are neither readable nor writable.  Add a check to prevent that.

https://bugzilla.gnome.org/show_bug.cgi?id=666616
2011-12-20 19:43:21 -05:00
Ryan Lortie
4e793c2eef GObject: allow G_PARAM_CONSTRUCT on any override
We were previously preventing implementations of an interface from
specifying G_PARAM_CONSTRUCT for a property of that interface if the
interface didn't specify it itself (or was readonly).

This is something that should only interest the implementation, so we
remove this restriction.

This allows 6 new possible override scenarios:

 - writable                 -> writable/construct
 - writable                 -> readwrite/construct
 - readwrite                -> readwrite/construct
 - writable/construct-only  -> writable/construct
 - writable/construct-only  -> readwrite/construct
 - readwrite/construct-only -> readwrite/construct

and we update the testcase to reflect this.

https://bugzilla.gnome.org/show_bug.cgi?id=666616
2011-12-20 19:40:44 -05:00
Ryan Lortie
b3b9f82206 GObject: add test for interface property overrides
Add a testcase to check all possibilities for overriding a property
specified on an interface from an implementation of that interface,
changing the type and flags.

https://bugzilla.gnome.org/show_bug.cgi?id=666616
2011-12-20 19:18:26 -05:00
Ryan Lortie
d8d78688a8 GObject: change the order of property checks
Change the order of the checks so that we hear about the 'biggest'
problem first.  Also, stop reporting problems after we report the first
one for a particular property.

Add some comments.

https://bugzilla.gnome.org/show_bug.cgi?id=666616
2011-12-20 19:18:25 -05:00
Ryan Lortie
5fb7a8e127 GObject: fix property override type checks
The property override typecheck was meant to enforce the type on the
overriding property being exactly equal to the type on the interface
property.  Instead, g_type_is_a() was incorrectly used.

We could try to enforce equality, but if a property is read-only then it
should be possible for the implementation to type the property with any
subtype of the type specified on the interface (because returning a more
specific type will still satisfy the interface).  Likewise, if the
property is write-only then it should be possible for the implementation
to type the property with any supertype.

We implement the check this way.

https://bugzilla.gnome.org/show_bug.cgi?id=666616
2011-12-20 19:18:25 -05:00
Ryan Lortie
ab0da3c282 GSimpleAction: fix some whitespace fail 2011-12-20 19:12:56 -05:00
Ryan Lortie
342e2faa29 GSimpleAction: tweak property flags
There's no need for 'enabled' and 'state' to be marked construct-only.
These properties are writable at all times.
2011-12-20 19:12:00 -05:00
Ryan Lortie
958f2bac7a GObject: fixup reversed logic in last commit
Accidentally dropped a !.
2011-12-20 15:29:16 -05:00