Commit Graph

12774 Commits

Author SHA1 Message Date
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
cb44e96dfa Fix crash in signal emission optimization
The trace of the signal emission of the was calculating the instance
type after the instance was unrefed. Fix this by keeping the instance type around.
2012-03-09 11:32:45 +01:00
Alexander Larsson
bbe4b57195 signal emission: Allocate instance_and_param with alloca
This Gives a 5% performance increase in e.g. the emit-handled test.
2012-03-09 09:57:03 +01:00
Erik van Pienbroek
7b939efa6f Use native glib-genmarshal when cross-compiling
The ability to cross-compile glib got broken after the
merge of the 'signal-performance' branch as the assumption
was made that the generated glib-genmarshal can be executed
on the host (which isn't valid when cross-compiling).

Fixed this by using the just-built glib-genmarshal for normal
compilations and the native (host) glib-genmarshal when doing a
cross-compilation as was also done in several other areas of GLib

Tested for host=x86_64-unknown-linux-gnu, target=x86_64-unknown-linux-gnu
and host=x86_64-unknown-linux-gnu, target=i686-w64-mingw32

https://bugzilla.gnome.org/show_bug.cgi?id=671676
2012-03-09 08:24:28 +01:00
Ryan Lortie
3fa7358487 gio-querymodules: unlink instead of writing empty cache
If there are no modules installed then the most appropriate thing is to
have no cachefile instead of an empty one.  This unbreaks the "clean
directory after 'make uninstall'" check that automake does.

https://bugzilla.gnome.org/show_bug.cgi?id=671664
2012-03-08 12:07:03 -05:00
Chun-wei Fan
c9f55445aa msvc_recommended_pragmas.h: Silence C4819 warnings
This warning appears when unicode chars that cannot be displayed in the
current Windows code page is used anywhere in the file, including comment
blocks.  We probably don't need to see these, especially as problems
caused by such characters are manifested as other warnings or errors,
for example, the need to add BOM to a file when compiling code with
complex script on Windows.
2012-03-08 17:19:15 +08:00
Nilamdyuti Goswami
93e2c1f12a Assamese translation completed 2012-03-08 14:09:12 +05:30
Chao-Hsiung Liao
c79606a3d6 Updated Traditional Chinese translation(Hong Kong and Taiwan) 2012-03-08 15:56:14 +08:00
Chun-wei Fan
05663607ea Update config.h.win32(.in)
Remove the config for ENABLE_REGEX, as GRegex is now included in all builds.
2012-03-08 15:34:39 +08:00
Chun-wei Fan
d642bf442f glib-genmarshal.c: Use G_VA_COPY instead of va_copy()
In the code generation portion, va_copy() is not universally available,
so use the existing G_VA_COPY macro that in turn calls va_copy() if it
is available or call an appropriate emulation otherwise.
2012-03-08 15:04:17 +08:00
Chun-wei Fan
b72bb9dd08 Use G_VA_COPY instead of va_copy()
va_vopy() is not universally available in all compilers, so make use of
the existing G_VA_COPY macro which either calls va_copy() if it is
available, or emulates it if otherwise.
2012-03-08 14:51:22 +08:00
Emmanuele Bassi
75ca1cd158 gobject: Fix a compiler warning
Shuffle the parenthesis around.
2012-03-07 12:53:14 +00:00
Cosimo Cecchi
7cf50ceb85 tests: fix GAction test for headless run 2012-03-06 22:11:22 -05:00
Nilamdyuti Goswami
a06542b998 Assamese translation completed 2012-03-06 21:45:13 +05:30
Seong-ho Cho
6b4e24aca0 Updated Korean translation 2012-03-06 23:50:59 +09:00
Alexander Larsson
026340c5fc Fix unused variable warning 2012-03-06 11:35:17 +01:00
David Zeuthen
6e8caec6d9 GUnix{Input,Output}Stream: Only release cancelable poll-fd if we allocated it
Otherwise we get criticals a'la

 GLib-GIO-CRITICAL **: g_cancellable_release_fd: assertion `cancellable->priv->fd_refcount > 0' failed

when reading/writing to certain kinds of file descriptors.

Patch reviewed by Dan Winship on IRC.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2012-03-05 13:00:28 -05:00
Matthias Clasen
b6f65ec940 bump version 2012-03-05 11:44:16 -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
a970fddb0e 2.31.20 2012-03-05 09:01:20 -05:00
Matthias Clasen
17fe7fbd5a Update glib-genmarshal docs
A bunch of new commandline options sneaked in without docs...
2012-03-05 08:32:07 -05:00
Matthias Clasen
afe30b2884 Fix a compiler warning 2012-03-05 07:54:47 -05:00
Matthias Clasen
dea3619367 gobject: Fix symbol lists 2012-03-05 07:34:58 -05:00
Matthias Clasen
d2e742c605 More updates 2012-03-05 07:02:53 -05:00
Alexander Larsson
f3fb42cfaf Merge branch 'signal-performance' 2012-03-05 12:29:45 +01:00
Matthias Clasen
e9c399a65b Fix distcheck 2012-03-05 06:18:24 -05:00
YunQiang Su
17835f8efd update Simplified Chinese (zh_CN) translation 2012-03-05 17:44:58 +08:00
Matthias Clasen
c0c2cbe0ae Fix distcheck 2012-03-04 22:28:28 -05:00
Matthias Clasen
47b162c1df Updates for 2.31.20 2012-03-04 21:48:26 -05:00
Matthias Clasen
1426a8ca07 Fix binding properties of the same object
This problem was pointed out in bug 639873.
The patch here is based on Matt Barnes patch,
I've added a testcase as well.
2012-03-04 20:49:04 -05:00
Nirbheek Chauhan
840c32281d Run gdb under libtool so that local libraries are used
If this isn't done, the system-wide glib is used for this test,
and that can cause test failures.

https://bugzilla.gnome.org/621368
2012-03-04 20:36:04 -05:00
Matej Urbančič
d49a77df5d Updated Slovenian translation 2012-03-04 21:23:29 +01:00
Martin Srebotnjak
ce5ccbf3e0 Updated Slovenian translation 2012-03-04 21:20:59 +01:00
Michael Biebl
f3bf532a3c build: include glib-compile-resources.xml in the dist tarball
https://bugzilla.gnome.org/show_bug.cgi?id=671281
2012-03-04 00:26:10 +01:00
Michael Biebl
cc2104e87a build: Fix failure on "make distclean"
https://bugzilla.gnome.org/show_bug.cgi?id=671270
2012-03-03 21:39:35 +01:00
Alexander Larsson
2d6502f67b fastpath: Do allow NO_RECURSE fastpath for NOP emissions
This fixes a performance regression wrt the old NOP emission
handler.
2012-03-03 21:36:10 +01: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
Ryan Lortie
a5caa564b7 GApplication: fix name unregister logic
We were attempting to unregister our ownership of our D-Bus name even in
the case that we were non-unique (ie: we didn't actually own the name).
Rework the logic a bit to prevent that: for non-unique, we leave
impl->bus_name as NULL and we only register/unregister if it is
non-NULL.
2012-03-03 11:48:12 -05:00
Nguyễn Thái Ngọc Duy
5c3e862776 Updated Vietnamese translation 2012-03-03 22:49:18 +07:00
Nguyễn Thái Ngọc Duy
f5aad13d8f po/vi: import from Damned Lies 2012-03-03 22:35:16 +07:00
Inaki Larranaga Murgoitio
27d9b92264 Updated Basque language 2012-03-03 14:43:05 +01:00
Peter O'Gorman
59ee6dbc00 Bug 640202 Impossible to build multi-architecture libraries
Hides ELF-only linker flag -export-dynamic from non-ELF linkers.
2012-03-02 13:36:27 -08:00
Alexander Larsson
b05ea89d0c Mask out G_SIGNAL_TYPE_STATIC_SCOPE when comparing types 2012-03-02 20:22:29 +01:00
Emmanuele Bassi
d10f79a196 build: Fix rules for marshalers.[ch] 2012-03-02 17:06:36 +00:00
Alexander Larsson
3d52ee999a Add more tests for signal emissions 2012-03-02 17:13:04 +01:00
Alexander Larsson
f02ec2f2de Optimize single-handler va_marshaller case
When there is only one closure handling a signal emission and
it doesn't have a bunch of complicated features enabled we
can short circuit the va_args collection into GValues and call the
callback via the va_marshaller directly.

https://bugzilla.gnome.org/show_bug.cgi?id=661140
2012-03-02 17:13:03 +01:00
Alexander Larsson
a3e91088ce Use builtin marshallers and va_marshallers if possible
If the signal argumment types matches a built in standard
marshaller we use the va_marshaller for that, and also the
normal marshaller if NULL was specified (as its faster than
the generic one).
2012-03-02 17:13:03 +01:00
Alexander Larsson
7964cda8e6 Add g_signal_set_va_marshaller
This lets you set a va_marshaller on your signal which will be
propagated to all closures for the signal. Also, automatically
uses the generica va_marshaller if you specify a NULL c_marshaller.

https://bugzilla.gnome.org/show_bug.cgi?id=661140
2012-03-02 17:13:03 +01:00
Alexander Larsson
1c4f0ca483 Add _g_closure_is_void to check for NULL vfuncs
https://bugzilla.gnome.org/show_bug.cgi?id=661140
2012-03-02 17:13:03 +01:00