Commit Graph

782 Commits

Author SHA1 Message Date
Alexander Larsson
fa2bced1f3 Enable threads in g_type_init()
This means threads will be supported for all gobject libraries/applications
and initialized early enough to not cause any problems.

This solves the problem of libraries needing threadsafety. Previosly
they just called g_threads_init() anyway, which often works but sometimes
breaks in unexpected ways.

See this thread for more details:
http://mail.gnome.org/archives/gtk-devel-list/2009-November/msg00208.html

https://bugzilla.gnome.org/show_bug.cgi?id=606775
2010-01-12 21:37:29 +01:00
Kamal Mostafa
f4ccd96ea1 g_object_new(): skip varargs for simple calls
g_object_new() avoids useless varargs processing for simple calls with no
properties.  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=605883
2010-01-11 15:34:41 +01:00
Haakon Sporsheim
4c55b45162 Don't do pointer arithmetics on void*
For instance MSVC doesn't like that.

Signed-off-by: Tor Lillqvist <tml@iki.fi>
2010-01-07 10:14:24 +02:00
Javier Jardón
3f5fb1ee9c [docs] Fix @title usage in "Enumeration and flags types" section 2010-01-03 23:36:44 +01:00
Pablo Castellano
0542e6dbf9 Updated .gitignore files 2010-01-03 01:24:44 +01:00
Javier Jardón
dba6cef3c9 [docs] Fix G_DEFINE_INTERFACE "Since" tag
This symbol is available since Glib 2.24, not 2.20.
2009-12-21 23:07:13 +01:00
Behdad Esfahbod
e7488ca857 [gobject] Grow gvalue transform array exponentially
Bug 589176 - Grow gvalue transform array exponentially

Reduces about 180 realloc calls during g_type_init().
2009-12-21 17:12:17 +01:00
Behdad Esfahbod
ccd33a4043 Bug 501166 - Warning message says IA__g_type_init instead of g_type_init 2009-12-19 11:46:19 +01:00
Javier Jardón
9917024949 G_DEFINE_INTERFACE_* documentation is not generated
Fix the documentation: Replace "@Since:" with "Since:"

https://bugzilla.gnome.org/show_bug.cgi?id=604645
2009-12-19 02:17:33 +01:00
Dan Winship
f74c0e257f update .gitignores 2009-12-18 12:27:36 +01:00
Dan Winship
91d96350a7 Add G_DEFINE_INTERFACE
This is a macro similar to G_DEFINE_TYPE but it lets you define
interfaces rather than classes.

For discussion, see bug #320482
2009-12-01 10:44:42 +01:00
Benjamin Otte
2a78adc5e3 Only add object to list new objects when it has a custom constructor
This works around the need to take a custom mutex twice and add the
object to a GSList of objects that are currently in construction for the
common case. Only when the constructor is overwritten do we use the
previous behavior and allow things like singleton objects.

The only slightly incompatible change is that previously, it was ok to
call g_object_set() on construct-only properties while the object was
initialized. This will now fail. If that behavior is needed, setting a
custom constructor that just chains up will reenable this functionality.

https://bugzilla.gnome.org/show_bug.cgi?id=557151
2009-11-30 20:52:33 +01:00
Benjamin Otte
f0f32a7ef0 Remove more read locks usage
g_type_default_interface_peek() and g_type_value_table_peek() don't need
to acquire read locks anymore when they test the refcount instead of
node->data.
2009-11-30 20:52:33 +01:00
Benjamin Otte
5cac5c828b Make g_type_class_peek[_static]() not take any locks
By replacing a check for node->data with a check for NODE_REFCOUNT(node)
these functions don't require a read lock anymore.
2009-11-30 20:52:33 +01:00
Edward Hervey
83ee0d947d gobject/tests: New test for dynamic class creation/destruction
Starts 100 threads which ref/unref a dynamic class to test the recent
changes to class init/uninit.
2009-11-30 20:52:33 +01:00
Edward Hervey
35c376a8a6 Add type_data_ref_U() and use it in g_type_class_ref()
The function returns TRUE if the type was previously initialized and can
be easily reused. It returns FALSE and does not take a reference if the
type is not referenced yet.

g_type_class_ref() uses this to avoid taking locks in the common path,
which speeds up object creation a lot - in particular in multithreaded
applications.

https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:33 +01:00
Edward Hervey
5160175656 Reorganize g_type_class_ref()
Moves the first check out of the lock, as it's not required.

https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:33 +01:00
Benjamin Otte
00a4470ad0 Make ClassData->init_state atomic
This is necessary to make g_type_class_ref() lockless.

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

Also includes fix for:

https://bugzilla.gnome.org/show_bug.cgi?id=587892
2009-11-30 20:52:33 +01:00
Edward Hervey
4c243b1cba Make type_data_unref_U not take locks in the common case
https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:32 +01:00
Edward Hervey
5e7dba0501 Make all accesses of Node->ref_count atomic
This does not change any locking behavior at all, it just replaces
simple getters/setters of the variable with atomic versions.

The ref_count variable was kept as unsigned, even though that requires
casting for all operations, to mirror GObject->refcount.

https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:32 +01:00
Edward Hervey
2ec989902b type_data_unref_Wm => type_data_unref_U
Make the type unref function not hold any locks when called. This
makes it easier to optimize it to be atomic later.

https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:32 +01:00
Benjamin Otte
b163759320 Add a NODE_REFCOUNT getter
This is useful when moving the code to be atomic.
It also will make that patch smaller.

https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:32 +01:00
Edward Hervey
170423f924 Move setting the refcount to the end of the function
This is a safety feature for when making it atomic later.

https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:32 +01:00
Edward Hervey
f8d24e8495 Pass the TypeNode to type_data_last_unref_Wm()
Previously the GType was looked up just for calling the function
Also moves the unref functions together in the code.

https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:32 +01:00
Edward Hervey
718b476c44 Move ref_count from TypeNode->data to TypeNode
https://bugzilla.gnome.org/show_bug.cgi?id=585375
2009-11-30 20:52:32 +01:00
Alexander Larsson
69961d27a1 Implement O(1) interface lookups
Currently interface lookups are do a binary search over all the interfaces
an object implements. Its possible to do this lookup in constant time using for
instance the gcj algorighm described at:
http://gcc.gnu.org/ml/java/1999-q3/msg00377.html

This is an implementation of that based on GAtomicArray.
2009-11-30 20:52:29 +01:00
Alexander Larsson
8f27a5e621 Implement lock free interface lookup
We implement lock free interface lookup by moving the n_ifaces
counter into memory pointed to by TypeNode->iface_entries, and
then updating this in RCU-style by always copying it, modifying
the copy and then when the modification is done replace the old
pointer with g_atomic_pointer_set.

There is one additional complexity when freeing the old memory,
since the old memory region can be in use. To handle this we
don't free such memory, but put it on a free list and reuse it
later. This means that lock-free lookups must be able to
handle the memory being modified in random ways without crashing,
and at the end we verify that the memory didn't change and the
transaction is ok.

With this infrastructure the patch then implements a lock-free
version of type_lookup_iface_entry_L called type_lookup_iface_vtable_I
and use it in: g_type_interface_peek, g_type_interface_peek_parent
and type_node_check_conformities_UorL.

Using the performance tests from bug 557100 shows that the general
performance difference is negligible, but the lack of a lock for each
type check and interface vfunc call should greatly enhance threaded
scalability.
2009-11-30 20:50:21 +01:00
Alexander Larsson
75ce4741f9 Add GAtomicArray for RCU-style lockless updates
This adds supports for a lock-less a non-shrinking growable array.
You can use it to do reads using no locks, as long as your read-code
can handle that during the read transaction the object can be modified
by another writer (but it will not change size or be freed), and you
can only trust the result once the transaction has finished successfully.

This doesn't free things like RCU normally does, instead it pushes the
memory on a free list that is reused for other atomic arrays.
2009-11-30 20:48:50 +01:00
Alexander Larsson
b35fa1994d Cast iface_init to GInterfaceInitFunc
This is in line with what all other type define macros do.

https://bugzilla.gnome.org/show_bug.cgi?id=508157
2009-11-26 12:32:36 +01:00
Alexander Larsson
7d51c96e5e Add G_IMPLEMENT_INTERFACE_DYNAMIC
Convenience macro to easy interface addition for dynamic types.

https://bugzilla.gnome.org/show_bug.cgi?id=508157
2009-11-26 11:20:18 +01:00
Benjamin Otte
ec79146572 Fix thread-safety
The n_children variable can be written when locked, while the n_supers
variable is read at any time. As they both share the same bytes,
accessing them is not threadsafe.
This patch puts them into different bytes.

Thanks to Xan Lopez and valgrind for noticing this.
2009-11-20 16:49:47 +01:00
Cody Russell
8eebc18944 GTypeModule derived class unref does not unload plugin
Correctly unref the pclass. Patch by Chris Wilson and Tim Janik.

https://bugzilla.gnome.org/show_bug.cgi?id=350200
2009-10-14 21:24:30 -05:00
Cody Russell
855deaa578 g_object_unref racy condition can lead to crash
Store whether the object has a toggleref before decrementing the
refcount to prevent race condition when two threads simultaneously
try to unref an object with a refcount of 2.
Patch by Antoine Tremblay.

https://bugzilla.gnome.org/show_bug.cgi?id=551706
2009-10-06 12:27:12 -04:00
Edward Hervey
68b1ca0443 gobject/gtype.h: Fix _G_TYPE_CVH macro. Fixes #597194
If __val doesn't exist, we shouldn't do any other checks.
2009-10-03 16:17:17 +02:00
Alexander Larsson
1937765f9f Add fast path for construction with no params
This avoids a bunch of code and makes construction of simple objects
faster.

Object construction performance improvement:
         Non-Threaded   Threaded
Simple:           14%         5%
Complex:        -1.1%      -2.2%

Other tests stable.

https://bugzilla.gnome.org/show_bug.cgi?id=557100
2009-10-02 21:02:48 +02:00
Alexander Larsson
ffc625ec9b Don't freeze/thaw notification during construction if no properties
If the class has no properties there could be no notification anyway.
This is an important optimization for construction of simple objects.

Object construction performance improvement:
         Non-Threaded   Threaded
Simple:           84%        91%
Complex:        -1.4%      -0.6%

Other tests stable.

https://bugzilla.gnome.org/show_bug.cgi?id=557100
2009-10-02 21:02:48 +02:00
Alexander Larsson
302d13a757 Add a check that no properties are added after a class is derived
We can't support that, because that would cause the CLASS_HAS_PROPS_FLAG
class flag to not be correct.
2009-10-02 21:02:48 +02:00
Alexander Larsson
39a1fe5782 Add GObjectClass flag CLASS_HAS_PROPS_FLAG
This is set if a class or any of its parents have installed any
properties.

https://bugzilla.gnome.org/show_bug.cgi?id=557100
2009-10-02 21:02:48 +02:00
Alexander Larsson
301d52d858 Add flags member for GObjectClass
https://bugzilla.gnome.org/show_bug.cgi?id=557100
2009-10-02 21:02:48 +02:00
Alexander Larsson
af017accc5 Allocate GObjectNotifyQueue with g_slice instead of abusing g_list
This is both cleaner and faster (it avoids function calls and
zeroing the memory twice).

Object construction performance improvement:
         Non-Threaded   Threaded
Simple:           11%       1.3%
Complex:           8%         6%

Other tests stable.

https://bugzilla.gnome.org/show_bug.cgi?id=557100
2009-10-02 21:02:48 +02:00
Matthias Clasen
e9fe53980b Fix --runtime-libdir option
For stable releases, it needs to take LT_REVISION into account, not
hardcode 0.
2009-09-29 23:08:03 -04:00
Alexander Larsson
e657dee578 Use right soname for gdb autoloaded python files
We need to look at LT_REVISION too to get the right filename.
This was just hardcoded to zero before which is obviously wrong.
2009-09-28 15:48:17 +02:00
Matthias Clasen
cc95c60c69 Fix location of gdb macros
These files need to be put in a location that corresponds to the
location of the libraries, so we need to take the runtime-libdir
path into account.
2009-09-24 10:26:46 -04:00
Matthias Clasen
4c633ff0b5 2.22.0 2009-09-22 16:57:08 -04:00
Mart Raudsepp
924f1bc528 Accept -? for glib-mkenums.
Commit 789e260638 tried to add support for -?, but there is a typo
and instead -h was added when already present instead of -? for one
of the cases.
It works without this corrections, because all unrecognized options
trigger usage showing as well, but this is more correct.

This was bug 556706 originally.
2009-09-22 11:22:44 +03:00
Alexander Larsson
efe9169234 Initial support for gdb python macros
This includes support for gobject pointer pretty printing and
signal frame compression in backtraces.

https://bugzilla.gnome.org/show_bug.cgi?id=595619
2009-09-21 15:39:00 +02:00
Matthias Clasen
8b3853b8a1 Reduce false positives in static analysis
Tools like clang fail to recognize that stanzas like
g_return_if_fail (GTK_IS_FOO (w)) guarantee w != NULL. By minimally
rewriting the type-checking macros, we can avoid these false positives.
2009-09-18 19:20:06 -04:00
Matthias Clasen
7ba9674d71 Avoid some compiler warnings. 2009-07-10 13:13:18 -04:00
Christian Persch
6d1474e7f1 Add @basename@ substitution to glib-mkenums
Since @filename@ contains the full filename as given to the glib-mkenum
command, possibly including path elements (e.g. when using a non-srcdir
build), it is unsuitable to use in a #include statement in the generated
file if one wants to distribute it. This patch adds @basename@ which
expands to the base name of the input filename. Bug #587307.
2009-07-03 20:50:27 +02:00
David Zeuthen
0ccd18bc83 Bug 586675 – Runtime library location
Introduce an option to specify the runtime location for libraries via
a relative path to libdir.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-06-23 12:58:35 -04:00
David Zeuthen
402847c887 Bug 580450 – Reference counting and boxed types for arrays
Add reference counting and boxed types for GArray, GByteArray and GPtrArray.

Signed-off-by: Matthias Clasen <mclasen@redhat.com>
2009-04-29 11:17:23 -04:00
Matthias Clasen
e68a35689f Fix G_DEFINE_TYPE_EXTENDED docs
Make the docs for G_DEFINE_TYPE_EXTENDED match the actual
definition of the macro.  (#577985)
2009-04-09 14:56:49 -04:00
Matthias Clasen
785bed2e18 Update README files to refer to git
Update various README files to refer to git instead of svn.
Add a README.commits that is pretty much a copy of the same file
in GTK+. Also discontinue ChangeLog files.
2009-03-31 19:39:16 -04:00
Kristian Rietveld
622f010120 when defaulting to the only item in the array, check if this is indeed the
2009-03-13  Kristian Rietveld  <kris@imendio.com>

	* gsignal.c (signal_lookup_closure): when defaulting to the only
	item in the array, check if this is indeed the default closure.
	(patch by Tim Janik).


svn path=/trunk/; revision=7979
2009-03-13 09:22:57 +00:00
Matthias Clasen
5a8a224ff0 2.20.0
svn path=/trunk/; revision=7976
2009-03-13 05:44:11 +00:00
Matthias Clasen
a902f5257c 2.19.10
svn path=/trunk/; revision=7942
2009-03-02 06:36:08 +00:00
Matthias Clasen
3f07ef2119 2.19.9
svn path=/trunk/; revision=7939
2009-03-02 05:49:44 +00:00
Matthias Clasen
979f3c10b9 More of the same
svn path=/trunk/; revision=7931
2009-03-01 15:42:03 +00:00
Matthias Clasen
789e260638 Adjust help output, accept -?, capitalize. Patch by Christian Dywan
* glib-mkenums.in: Adjust help output, accept -?, capitalize.
        Patch by Christian Dywan


svn path=/trunk/; revision=7930
2009-03-01 15:40:07 +00:00
Matthias Clasen
f548330275 Fix "it's" vs "its" confusion throughout the source. Patch by Will
* Fix "it's" vs "its" confusion throughout the source. Patch
        by Will Thompson.


svn path=/trunk/; revision=7897
2009-02-23 04:30:06 +00:00
Matthias Clasen
4611dadadd 2.19.8
svn path=/trunk/; revision=7876
2009-02-17 18:36:36 +00:00
Matthias Clasen
c8e37b63e7 Fix strict aliasing warnings and viiolations to make GLib and
GLib users buildable with gcc 4.4. Patch by Jakub Jelinek.

        * glib/gatomic.[hc]: Add G_GNUC_MAY_ALIAS to pointer arguments,
        fix macro versions to only operate on objects of the same size.

        * glib/gdataset.c:
        * glib/gthread.[hc]:
        * glib/gdatasetprivate.h: Remove unnecessary casts in
        g_atomic_pointer_get calls.


svn path=/trunk/; revision=7875
2009-02-17 16:14:39 +00:00
Matthias Clasen
7b106d2066 2.19.7
svn path=/trunk/; revision=7868
2009-02-17 02:49:52 +00:00
Matthias Clasen
afa157a73d 2.19.6
svn path=/trunk/; revision=7845
2009-02-02 20:09:08 +00:00
Matthias Clasen
af6a048743 2.19.5
svn path=/trunk/; revision=7820
2009-01-19 07:46:43 +00:00
Matthias Clasen
a5fd60a8ac Define an ENABLE_REGEX macro
* configure.in: Define an ENABLE_REGEX macro

        * gobject/gboxed.c: Don't refer to g_regex_ref if ENABLE_REGEX
        is not defined.


svn path=/trunk/; revision=7815
2009-01-18 06:53:44 +00:00
Matthias Clasen
85fa6de695 2.19.4
svn path=/trunk/; revision=7777
2009-01-05 18:06:05 +00:00
Behdad Esfahbod
bf201e0fb7 Bug 565136 – Gobject's "notify" signal parameters are wrong in gtk-doc
2009-01-02  Behdad Esfahbod  <behdad@gnome.org>

        Bug 565136 – Gobject's "notify" signal parameters are wrong in gtk-doc
        Patch from  Andrzej Zaborowski

        * gobject.c (g_object_do_class_init): Fix param order in docs.


svn path=/trunk/; revision=7759
2009-01-02 06:09:26 +00:00
Matthias Clasen
649c25f216 2.19.3
svn path=/trunk/; revision=7746
2008-12-15 20:01:49 +00:00
Matthias Clasen
be914f6841 Make these work on x86_64
svn path=/trunk/; revision=7744
2008-12-13 23:56:05 +00:00
Matthias Clasen
6537b5e11d Always reset the use count to its previous value before returning FALSE.
* gtypemodule.c (g_type_module_use): Always reset the use count
        to its previous value before returning FALSE. Pointed out by
        Johan Billien.


svn path=/trunk/; revision=7725
2008-12-02 05:14:00 +00:00
Matthias Clasen
cce2159983 2.19.2
svn path=/trunk/; revision=7721
2008-12-01 20:01:16 +00:00
Matthias Clasen
ec48fa8fc2 2.19.1
svn path=/trunk/; revision=7717
2008-12-01 14:44:26 +00:00
Matthias Clasen
db830dd381 Fix some documentation typos
svn path=/trunk/; revision=7707
2008-11-28 23:53:13 +00:00
Matthias Clasen
8b14e3744c Expand the docs of g_object_class_install_property. Proposed by Maciej
* gobject.c: Expand the docs of g_object_class_install_property.
Proposed by Maciej Piechotka

svn path=/trunk/; revision=7642
2008-11-04 04:17:40 +00:00
Matthias Clasen
82c68c6a14 2.19.0
svn path=/trunk/; revision=7611
2008-10-16 23:59:50 +00:00
Dan Winship
7afe2bb07a add uint* -> int* casts in g_atomic_int calls to avoid gcc warnings
* gobject.c (g_object_ref, g_object_unref)
	(g_object_freeze_notify, g_object_notify, g_object_thaw_notify):
	* gparam.c (g_param_spec_ref, g_param_spec_unref):
	* gsignal.c (handler_ref, handler_unref_R): add uint* -> int*
	casts in g_atomic_int calls to avoid gcc warnings

svn path=/trunk/; revision=7551
2008-09-26 16:00:33 +00:00
Matthias Clasen
ac516ab07e 2.18.1
svn path=/trunk/; revision=7505
2008-09-17 23:56:04 +00:00
Matthias Clasen
e43de8e0e6 2.18.0
svn path=/trunk/; revision=7434
2008-09-02 20:09:55 +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
Björn Lindqvist
886c0e0d81 Bug 523939 – Example program for GValue
2008-08-22  Björn Lindqvist  <bjourne@gmail.com>

	Bug 523939 – Example program for GValue

	* gobject/gvalue.c: Add code example that demonstrates GValue's
	features.

svn path=/trunk/; revision=7387
2008-08-22 18:23:05 +00:00
Johan Dahlin
f9cc9f4bc7 Revert fix for 548689
svn path=/trunk/; revision=7379
2008-08-21 09:45:07 +00:00
Johan Dahlin
a12f4b7be7 Mark g_object_get_type function as const, it's a fundamental type and can
2008-08-21  Johan Dahlin  <johan@gnome.org>

    * gobject.h:
    Mark g_object_get_type function as const, it's
    a fundamental type and can safely marked as const,
    as opposed to traditionally *_get_type functions.


svn path=/trunk/; revision=7378
2008-08-21 09:42:44 +00:00
Johan Dahlin
306db46123 Bug 548800 – Missing a g_object_get_type function
2008-08-21  Johan Dahlin  <johan@gnome.org>

    Bug 548800 – Missing a g_object_get_type function

    * gobject.c (g_object_get_type):
    * gobject.h:
    * gobject.symbols:
    Add g_object_get_type


svn path=/trunk/; revision=7377
2008-08-21 09:18:25 +00:00
Johan Dahlin
eb6ae44256 Reverse the order, pointed out by Mitch 'hawkeye' Natter
svn path=/trunk/; revision=7376
2008-08-21 09:09:43 +00:00
Johan Dahlin
0f7359d215 Bug 548689 – The type name for GParamSpec is wrong
2008-08-20  Johan Dahlin  <johan@gnome.org>

    Bug 548689 – The type name for GParamSpec is wrong

    * gparam.c (g_param_type_init):
    Register the type name as GParam instead of GParamSpec.


svn path=/trunk/; revision=7374
2008-08-20 15:51:53 +00:00
Matthias Clasen
e17c805ce4 2.17.7
svn path=/trunk/; revision=7367
2008-08-18 13:17:39 +00:00
Matthias Clasen
26c1be0d51 2.13.6
svn path=/trunk/; revision=7301
2008-08-04 17:58:13 +00:00
Matthias Clasen
ab0f863606 2.17.5
svn path=/trunk/; revision=7297
2008-08-04 17:01:23 +00:00
Matthias Clasen
5330f392bd Add bug ref
svn path=/trunk/; revision=7281
2008-08-01 18:36:31 +00:00
Matthias Clasen
63802ac67d Clarify some docs
svn path=/trunk/; revision=7280
2008-08-01 18:36:01 +00:00
Tor Lillqvist
e5e4f8bca3 gtype.h Revert my change from 2008-07-24. No G_TYPE_FORMAT is needed. Just
2008-07-27  Tor Lillqvist  <tml@novell.com>

	* gtype.h
	* gtype.c: Revert my change from 2008-07-24. No G_TYPE_FORMAT is
	needed. Just use G_GSIZE_FORMAT always when printing GType values.


svn path=/trunk/; revision=7256
2008-07-27 15:58:48 +00:00
Tor Lillqvist
a076a30457 Set LIB_EXE_MACHINE_FLAG to either X86 or X64 on Windows. AC_SUBST it.
2008-07-27  Tor Lillqvist  <tml@novell.com>

	* configure.in: Set LIB_EXE_MACHINE_FLAG to either X86 or X64 on
	Windows. AC_SUBST it.

	* */Makefile.am: Correspondingly, pass appropriate -machine
	flag to lib.exe when producing the import library for the MS
	toolchain.


svn path=/trunk/; revision=7255
2008-07-27 15:54:15 +00:00
Tor Lillqvist
b46641eab2 Define G_TYPE_FORMAT as the printf format for a GType value. Either
2008-07-24  Tor Lillqvist  <tml@novell.com>

	* gtype.h: Define G_TYPE_FORMAT as the printf format for a GType
	value. Either G_GSIZE_FORMAT or "lu".

	* gtype.c: Use it instead of the C99 zu.


svn path=/trunk/; revision=7250
2008-07-24 01:11:52 +00:00
Matthias Clasen
7df58dc393 Fix a typo
svn path=/trunk/; revision=7244
2008-07-23 17:04:36 +00:00
Matthias Clasen
282805b1d4 2.17.4
svn path=/trunk/; revision=7234
2008-07-21 17:56:17 +00:00
Michael Natterer
f573de59d2 Should save before committing :)
svn path=/trunk/; revision=7230
2008-07-21 10:39:28 +00:00
Michael Natterer
864fbce267 Reviewed by Tim Janik:
2008-07-21  Michael Natterer  <mitch@imendio.com>

	Reviewed by Tim Janik:

	* gsignal.c (g_signal_chain_from_overridden_handler): allocate
	the temp GValue array with GSLice.

	(g_signal_emit_valist): dito. Remove optimization/obfuscation of
	allocating up to 16 GValues on the stack and always use GSLice.


svn path=/trunk/; revision=7229
2008-07-21 10:36:03 +00:00
Matthias Clasen
6b4da7c5e1 Use the right binary name in help output. Patch by Hiroyuki Ikezoe.
* gobject-query.c: Use the right binary name in help output.
        Patch by Hiroyuki Ikezoe.


svn path=/trunk/; revision=7164
2008-07-06 02:01:56 +00:00
Michael Natterer
6f1f1342e4 remove unused #define PREALLOC_CPARAMS.
2008-07-04  Michael Natterer  <mitch@imendio.com>

	* gobject.c: remove unused #define PREALLOC_CPARAMS.


svn path=/trunk/; revision=7159
2008-07-04 13:08:39 +00:00