dana/cg-glib.git
14 years agoLine up the function parameters in the GTree header file again. master
Dana Jansens [Fri, 13 Nov 2009 16:35:41 +0000 (11:35 -0500)]
Line up the function parameters in the GTree header file again.

14 years agoAdd the versioned/persistent GTree interface.
Dana Jansens [Thu, 12 Nov 2009 23:23:09 +0000 (18:23 -0500)]
Add the versioned/persistent GTree interface.

Change g_tree_lookup_related() to not take a version, but search on the current/latest version of the GTree.
Add a func_v() version for each of the g_tree_lookup/foreach/search/height functions, which takes an extra version argument, which is the version of the GTree for which to query.

14 years agoAllow you to delete all versions <= x from a GTree.
Dana Jansens [Thu, 12 Nov 2009 23:38:10 +0000 (18:38 -0500)]
Allow you to delete all versions <= x from a GTree.

14 years agoMake a GTree persistent.
Dana Jansens [Fri, 13 Nov 2009 16:20:47 +0000 (11:20 -0500)]
Make a GTree persistent.

* Change the GTreeNode structure so that it can keep multiple versions of its
navigation pointers.

* Remove left_child and right_child from GTreeNode in favor of parent. For
persistence to work, a node needs to know where its incoming pointers are.
If node->right/left can point to the next/previous node in the tree, then we
might have an incoming pointer from our previous node, but don't have a
pointer to it.  Finding the next/previous node takes up to log(n) time, which
isn't cool to do every time we change a node.  So, if we want next/previous
pointers, we need to always have the pointer, so that it can be recipricated,
and thus would require two extra pointer spots beyond left/right to store that.

Because a node points to its children, they also need to be able to find their
incoming pointer in their parent.  We add a pointer for this, which allows us
to still navigate the tree, and thus we don't need to add next/previous
pointers also.

* Reflect that g_tree_nnodes() now returns the number of nodes for the current
version of the tree.

* Add g_tree_current_version() and g_tree_next_version() functions which
report the current version, and allow you to move the tree into the next
version.  Inserts/deletes after that will occur in the new version only.

* Add g_tree_root_next_version() and g_tree_node_next_version() functions that
move a node or a root pointer into the tree up to the current version of the
tree so that it can be modified (for insert/delete).

Make sure nodes have pointers for the current version when changing them, and
that we always modify the current root pointer into the tree.

When moving a node to the current version of the tree, it's pointer table
may become full, and a new node needs to be created.  Then any nodes with
pointers to the old one need to be updated.

* Add functions g_tree_root_find_version() and g_tree_node_find_version()
that take a version number, and find the pointers which match for
that version (the largest ones <= the version).

* Fix g_tree_remove() and g_tree_steal() for a persistent tree. Free a node's
data and return TRUE for these functions only if it's the last
version of the node in the persistent tree.  Make the functions return FALSE
if the node is found but cannot be removed because it is in an older version
of the tree.

This should help people from freeing things accidentally based on the return
result.

* Make g_tree_node_search() and g_tree_node_find() search for a key within a
given version of the GTree, rather than always in the latest version.

* Make g_tree_destroy_all() delete all versions of everything in the tree.

* Make the new g_tree_lookup_related() function take an argument "version".
This function now searches in the requested version of the tree, rather than
only in the current/latest version.

* Update the debug testing code to check all versions of a persistent tree.

* Add units tests for consistency in all versions of a persistent/versioned
GTree using g_tree_lookup_related().

14 years agoAdd the g_lookup_related() and g_search_related() functions.
Dana Jansens [Wed, 28 Oct 2009 20:05:44 +0000 (16:05 -0400)]
Add the g_lookup_related() and g_search_related() functions.

These functions search in a GTree for a key, and can return the next
larger/smaller key instead if the search key is not found.

14 years agoImplement GTree with a treap instead of an AVL tree
Dana Jansens [Wed, 28 Oct 2009 18:49:25 +0000 (14:49 -0400)]
Implement GTree with a treap instead of an AVL tree

14 years agoRemove fuzzy marker from header, which crashed my msgfmt
Tor Lillqvist [Wed, 25 Nov 2009 10:57:10 +0000 (12:57 +0200)]
Remove fuzzy marker from header, which crashed my msgfmt

14 years agoBug 601637 - add GUnixFDList
Ryan Lortie [Thu, 12 Nov 2009 03:40:28 +0000 (22:40 -0500)]
Bug 601637 - add GUnixFDList

change GUnixFDMessage to contain a GUnixFDList.

add test case for GUnixFDMessage and GUnixFDList.

update docs.

14 years agoUpdate gio.symbols with new functions
Alexander Larsson [Tue, 24 Nov 2009 12:31:33 +0000 (13:31 +0100)]
Update gio.symbols with new functions

14 years agoExport g_charset_converter_get_num_fallbacks in header
Alexander Larsson [Tue, 24 Nov 2009 12:31:10 +0000 (13:31 +0100)]
Export g_charset_converter_get_num_fallbacks in header

14 years agoFix GZlibCompressorFormat names
Alexander Larsson [Tue, 24 Nov 2009 12:02:05 +0000 (13:02 +0100)]
Fix GZlibCompressorFormat names

What used to be called RAW is really the zlib header format.
There is a real "raw" format, so rename the default and add a RAW type.

14 years agoBug 591214 - Warnings building gcancellable.o
Ryan Lortie [Thu, 12 Nov 2009 04:31:12 +0000 (23:31 -0500)]
Bug 591214 - Warnings building gcancellable.o

- check for EINTR on read() and write() calls
- remove unused 'priv' variable

14 years agoBug 598712 - can't detect text file with backspace
Ryan Lortie [Fri, 20 Nov 2009 18:54:35 +0000 (12:54 -0600)]
Bug 598712 - can't detect text file with backspace

looks_like_text(): Allow '\b' to appear in text files.

14 years agoAdd filter-cat test for GConverter streams
Alexander Larsson [Wed, 18 Nov 2009 15:07:16 +0000 (16:07 +0100)]
Add filter-cat test for GConverter streams

14 years agoAdd GZlibCompressor
Alexander Larsson [Fri, 20 Nov 2009 11:04:31 +0000 (12:04 +0100)]
Add GZlibCompressor

14 years agoAdd GZlibDecompressor for zlib decompression
Alexander Larsson [Thu, 19 Nov 2009 16:20:20 +0000 (17:20 +0100)]
Add GZlibDecompressor for zlib decompression

14 years agoAdd zlib dependency to gio
Alexander Larsson [Thu, 19 Nov 2009 16:16:29 +0000 (17:16 +0100)]
Add zlib dependency to gio

Will be used by compression APIs

14 years agoAdd test for converter streams
Alexander Larsson [Fri, 23 Oct 2009 17:59:03 +0000 (19:59 +0200)]
Add test for converter streams

14 years agoAdd GConverterOutputStream
Alexander Larsson [Mon, 23 Nov 2009 14:03:57 +0000 (15:03 +0100)]
Add GConverterOutputStream

This allows for conversion when saving

14 years agoAdd g_output_stream_is_closing
Alexander Larsson [Mon, 23 Nov 2009 14:02:50 +0000 (15:02 +0100)]
Add g_output_stream_is_closing

Need this to check how we're flushing when closing a converter
output stream.

14 years agoAdd GConverterInputStream
Alexander Larsson [Thu, 22 Oct 2009 20:50:52 +0000 (22:50 +0200)]
Add GConverterInputStream

Read and convert data from an input stream

14 years agoAdd fallback mode to GCharsetConverter
Alexander Larsson [Mon, 23 Nov 2009 15:19:08 +0000 (16:19 +0100)]
Add fallback mode to GCharsetConverter

14 years agoAdd GCharsetConverter
Alexander Larsson [Wed, 21 Oct 2009 19:25:36 +0000 (21:25 +0200)]
Add GCharsetConverter

14 years agoAdd GConverter interface
Alexander Larsson [Wed, 18 Nov 2009 12:14:13 +0000 (13:14 +0100)]
Add GConverter interface

This is an interface for stateful conversions of data. Its a generic
interface suitable for things like IConv, compression, decompression,
and regexp replacement.

14 years agoAdd G_IO_ERROR_PARTIAL_INPUT and G_IO_ERROR_INVALID_DATA errors
Alexander Larsson [Tue, 20 Oct 2009 12:12:31 +0000 (14:12 +0200)]
Add G_IO_ERROR_PARTIAL_INPUT and G_IO_ERROR_INVALID_DATA errors

These are needed for GConverter

14 years agogtester should fail even if -k is passed
Cody Russell [Mon, 23 Nov 2009 13:48:14 +0000 (07:48 -0600)]
gtester should fail even if -k is passed

14 years agoUpdated Brazilian Portuguese translation.
Vladimir Melo [Mon, 23 Nov 2009 13:36:06 +0000 (08:36 -0500)]
Updated Brazilian Portuguese translation.

14 years agoRemove #include "glocalfile.h" from GFile
Ryan Lortie [Fri, 20 Nov 2009 20:40:58 +0000 (14:40 -0600)]
Remove #include "glocalfile.h" from GFile

It might give somebody the wrong idea. =)

14 years agoFix thread-safety
Benjamin Otte [Fri, 20 Nov 2009 15:47:09 +0000 (16:47 +0100)]
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.

14 years agopriv variable should only be used in win32 code
Juan A. Suarez Romero [Fri, 20 Nov 2009 15:46:41 +0000 (16:46 +0100)]
priv variable should only be used in win32 code

14 years agog_socket_listener_add_any_inet_port is Since 2.24
Ryan Lortie [Thu, 19 Nov 2009 16:19:01 +0000 (10:19 -0600)]
g_socket_listener_add_any_inet_port is Since 2.24

accidentally committed an old patch without updating.

14 years agoBug 585566 - GSocketListener API issues
Ryan Lortie [Mon, 15 Jun 2009 18:07:13 +0000 (14:07 -0400)]
Bug 585566 - GSocketListener API issues

Add a new function, g_socket_listener_add_any_inet_port(), to deal with
the desired use case.

14 years agoBug 600550 - (...) doesn't treat arguments properly
Christian Dywan [Thu, 19 Nov 2009 15:58:43 +0000 (09:58 -0600)]
Bug 600550 - (...) doesn't treat arguments properly

Add some additional checking to g_app_info_create_from_commandline to
make it handle strange inputs more elegantly.

14 years agoBug 600620 - Add g_app_info_get_display_name()
Vincent Untz [Wed, 18 Nov 2009 22:37:47 +0000 (16:37 -0600)]
Bug 600620 - Add g_app_info_get_display_name()

This new API can make use of X-GNOME-FullName in .desktop files, to have
the full name of applications.

14 years agoBug 595138 - GFile not robust with invalid input
Ryan Lortie [Thu, 19 Nov 2009 00:43:30 +0000 (18:43 -0600)]
Bug 595138 - GFile not robust with invalid input

Improve handling of g_file_query_default_handler() when called on an
invalid GFile (ie: one created with an invalid URI).

14 years agoBug 600141 - Add -pthread to gmodule pkg-config
Ryan Lortie [Wed, 18 Nov 2009 02:41:48 +0000 (20:41 -0600)]
Bug 600141 - Add -pthread to gmodule pkg-config

It is not generally permissible to dlopen() libpthread into a program
that is not already linked with threading support.  The most common case
of this happening is when GIO opens Gvfs (which includes DBus, which
links against libpthread).

Since gmodule is the way that most users cause this problem for
themselves and since the easiest workaround is to link the program with
-pthread, the best fix for the issue is to add -pthread to the gmodule
pkg-config.

14 years agoBug 535159 - g_file_has_parent
Ryan Lortie [Thu, 12 Nov 2009 06:37:27 +0000 (01:37 -0500)]
Bug 535159 - g_file_has_parent

- add a g_file_has_parent() function as a wrapper around
   g_file_get_parent()

14 years agoFix compilation warning: Initialize the variable
Javier Jardón [Sun, 15 Nov 2009 23:29:39 +0000 (00:29 +0100)]
Fix compilation warning: Initialize the variable

14 years agoFix compilation warning: Remove unused function
Javier Jardón [Sun, 15 Nov 2009 23:33:07 +0000 (00:33 +0100)]
Fix compilation warning: Remove unused function

14 years agoFix compilation warning: cast to (GCompareFunc)
Javier Jardón [Sun, 15 Nov 2009 23:22:03 +0000 (00:22 +0100)]
Fix compilation warning: cast to (GCompareFunc)

14 years agoDon't mention g_utf32_to_utf8() and g_utf8_to_utf32()
Javier Jardón [Sun, 15 Nov 2009 04:51:45 +0000 (05:51 +0100)]
Don't mention g_utf32_to_utf8() and g_utf8_to_utf32()

These functions doesn't exist.
Suggest to use g_ucs4_to_utf8/g_utf8_to_ucs4 to produce the UTF-8
representation of a gunichar

This fix bug: https://bugzilla.gnome.org/show_bug.cgi?id=601874

14 years agoSuggest the use of G_STRFUNC
Javier Jardón [Sun, 15 Nov 2009 22:58:23 +0000 (23:58 +0100)]
Suggest the use of G_STRFUNC

Suggest G_STRFUNC in the documentation of the deprecated functions
G_GNUC_PRETTY_FUNCTION and G_GNUC_FUNCTION

14 years agoBug 587300 - g_cancellable_disconnect deadlock
Ryan Lortie [Thu, 12 Nov 2009 04:48:06 +0000 (23:48 -0500)]
Bug 587300 - g_cancellable_disconnect deadlock

add documentation to clarify that a deadlock is the expected case for
calling this function from a signal handler

14 years agoBug 591216 - Warning building resolver.o
Ryan Lortie [Thu, 12 Nov 2009 04:21:48 +0000 (23:21 -0500)]
Bug 591216 - Warning building resolver.o

check result of write system call to quiet compiler warning

14 years agoGSocket.receive_message: fix bogus allocation math
Ryan Lortie [Thu, 12 Nov 2009 03:20:11 +0000 (22:20 -0500)]
GSocket.receive_message: fix bogus allocation math

14 years agoUpdated Norwegian bokmål translation.
Kjartan Maraas [Wed, 11 Nov 2009 19:09:53 +0000 (20:09 +0100)]
Updated Norwegian bokmål translation.

14 years agoInclude all of share/gtk-doc/html to get also the gio docs
Tor Lillqvist [Tue, 10 Nov 2009 12:19:59 +0000 (14:19 +0200)]
Include all of share/gtk-doc/html to get also the gio docs

Also add -D switches to not pointlessly include entries for directories
in the zip files.

14 years agoAvoid gcc warning about redeclaration of atexit() on MinGW
Tor Lillqvist [Mon, 9 Nov 2009 23:37:13 +0000 (01:37 +0200)]
Avoid gcc warning about redeclaration of atexit() on MinGW

14 years agoUpdated Swedish translation
Daniel Nylander [Sun, 8 Nov 2009 21:04:51 +0000 (22:04 +0100)]
Updated Swedish translation

14 years agoUpdated Galician Translation
Fran Diéguez [Sat, 7 Nov 2009 13:40:58 +0000 (14:40 +0100)]
Updated Galician Translation

14 years agoUpdated Spanish translation
Jorge González [Fri, 6 Nov 2009 20:51:28 +0000 (21:51 +0100)]
Updated Spanish translation

14 years agoUpdating Estonian translation
Ivar Smolin [Fri, 6 Nov 2009 16:15:29 +0000 (18:15 +0200)]
Updating Estonian translation

14 years agoUpdated Slovenian translation
Matej Urbančič [Fri, 6 Nov 2009 13:58:44 +0000 (14:58 +0100)]
Updated Slovenian translation

14 years agoBug 324930 - Nicer message for EPERM on symlink
Stéphane Démurget [Sun, 25 Oct 2009 10:14:36 +0000 (11:14 +0100)]
Bug 324930 - Nicer message for EPERM on symlink

Introduced a more precise error message for EPERM when symlinking to
a local filesystem.

EPERM on symlink means symlinking is not supported by the underlying
fs so it is not the general meaning of EPERM which roughly translates
to 'Operation not permitted'.

14 years agoDon't call WSAEventSelect() on -1
Tor Lillqvist [Wed, 4 Nov 2009 21:59:18 +0000 (23:59 +0200)]
Don't call WSAEventSelect() on -1

If g_io_win32_sock_close() has been called on a socket channel, don't
later in g_io_win32_free() call WSAEventSelect() on its fd which has
been set to -1.

14 years agoDon't run system("touch conf.glibtest)" in the AM_PATH_GLIB_2_0 macro
Paolo Bonzini [Tue, 3 Nov 2009 16:38:58 +0000 (18:38 +0200)]
Don't run system("touch conf.glibtest)" in the AM_PATH_GLIB_2_0 macro

Just use the C library instead to create the file. Helps building
using Wine. Not that I think we want to endorse that, but accepting
this minimal patch doesn't hurt. From bug #590016.

Signed-off-by: Tor Lillqvist <tml@iki.fi>
14 years agoImprove descriptive comment text
Tor Lillqvist [Tue, 3 Nov 2009 16:21:19 +0000 (18:21 +0200)]
Improve descriptive comment text

14 years agoFix check for C++ compiler when cross-compiling
Hib Eris [Tue, 3 Nov 2009 13:06:29 +0000 (15:06 +0200)]
Fix check for C++ compiler when cross-compiling

Use AC_CHECK_TOOLS instead of AC_CHECK_PROGS. Patch from bug #577711.

14 years agoMake g_file_test() behave on Windows more like as on POSIX
Carlo Bramini [Tue, 3 Nov 2009 12:26:25 +0000 (14:26 +0200)]
Make g_file_test() behave on Windows more like as on POSIX

Patch from bug #572252.

14 years agoShavian translation
Thomas Thurman [Sat, 31 Oct 2009 06:49:31 +0000 (02:49 -0400)]
Shavian translation

14 years agoProperly nul-terminate return values from g_convert()
Benjamin Otte [Wed, 28 Oct 2009 18:18:20 +0000 (19:18 +0100)]
Properly nul-terminate return values from g_convert()

The patch ensures that multibyte character sets are properly
nul-terminated. This is an issue because the documentation claims to
return a "nul-terminated" string and users of the API assume that means
a proper nul-termination in the resulting character set.

I looked at Pidgin and GStreamer code and found at least 3 cases where
this was happening.

This patch also reverts the documentation change from
5a633f82dbbce067c56fba0ee372fd341b76368d as that is now no longer
necessary.

14 years agoClarify documentation about g_convert() nul-terminated returns
Benjamin Otte [Tue, 27 Oct 2009 20:07:13 +0000 (21:07 +0100)]
Clarify documentation about g_convert() nul-terminated returns

THere is effectively no nul-termination for multibyte characters.

14 years agoAvoid a warning
Matthias Clasen [Sun, 25 Oct 2009 06:56:13 +0000 (02:56 -0400)]
Avoid a warning

14 years agoDon't give up too early when collecting mime types
Matthias Clasen [Sun, 25 Oct 2009 06:55:46 +0000 (02:55 -0400)]
Don't give up too early when collecting mime types

Since returning exactly one match has special significance, don't
give up matching before we've found at least 2 types. Also, make
sure that we don't return the same mime type more than once.
Bug 541236.

14 years agomake sure g_set_prgname() gets called only once
Sven Herzberg [Fri, 23 Oct 2009 12:49:38 +0000 (14:49 +0200)]
make sure g_set_prgname() gets called only once

* glib/gutils.c: copy the call-once statement from g_set_application_name();
  Fixes Bug #563627: g_get_prgname() threadsafety

14 years agoFix GWin32DirectoryMonitor
Tor Lillqvist [Thu, 22 Oct 2009 21:46:50 +0000 (00:46 +0300)]
Fix GWin32DirectoryMonitor

GWin32DirectoryMonitor was quite broken, but nobody had apparently
noticed, or at least not filed any bug. Only now with a bleeding edge
GTK+ file chooser does the code get exercised in common programs like
gtk-demo or GIMP, apparently. Bug #598899.

14 years agoGTypeModule derived class unref does not unload plugin
Cody Russell [Thu, 15 Oct 2009 02:24:30 +0000 (21:24 -0500)]
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

14 years agoDocumentation fixes
Tomas Bzatek [Tue, 13 Oct 2009 14:21:42 +0000 (16:21 +0200)]
Documentation fixes

14 years agoConstruct the gio module directory pathname at run-time on Windows
Tor Lillqvist [Sun, 11 Oct 2009 21:18:48 +0000 (00:18 +0300)]
Construct the gio module directory pathname at run-time on Windows

14 years agoxdgmime: sort glob hits with larger weight first
Alexander Larsson [Thu, 8 Oct 2009 09:59:23 +0000 (11:59 +0200)]
xdgmime: sort glob hits with larger weight first

Higher weight is more important, so return these first meaning
they will be used as the default.

14 years agoUpdating Estonian translation
Ivar Smolin [Thu, 8 Oct 2009 06:56:25 +0000 (09:56 +0300)]
Updating Estonian translation

14 years agoBump version
Matthias Clasen [Wed, 7 Oct 2009 14:31:19 +0000 (10:31 -0400)]
Bump version

14 years ago2.22.2
Matthias Clasen [Wed, 7 Oct 2009 14:29:32 +0000 (10:29 -0400)]
2.22.2

14 years agoUpdates
Matthias Clasen [Wed, 7 Oct 2009 13:28:19 +0000 (09:28 -0400)]
Updates

14 years agog_object_unref racy condition can lead to crash
Cody Russell [Tue, 6 Oct 2009 16:27:12 +0000 (12:27 -0400)]
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

14 years agoUpdated Russian translation by <vicanis@gmail.com>
Leonid Kanter [Tue, 6 Oct 2009 08:52:48 +0000 (11:52 +0300)]
Updated Russian translation by <vicanis@gmail.com>

14 years agogobject/gtype.h: Fix _G_TYPE_CVH macro. Fixes #597194
Edward Hervey [Sat, 3 Oct 2009 10:37:36 +0000 (12:37 +0200)]
gobject/gtype.h: Fix _G_TYPE_CVH macro. Fixes #597194

If __val doesn't exist, we shouldn't do any other checks.

14 years agoAdd fast path for construction with no params
Alexander Larsson [Wed, 19 Aug 2009 15:24:16 +0000 (17:24 +0200)]
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

14 years agoDon't freeze/thaw notification during construction if no properties
Alexander Larsson [Wed, 19 Aug 2009 15:22:32 +0000 (17:22 +0200)]
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

14 years agoAdd a check that no properties are added after a class is derived
Alexander Larsson [Fri, 2 Oct 2009 17:27:48 +0000 (19:27 +0200)]
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.

14 years agoAdd GObjectClass flag CLASS_HAS_PROPS_FLAG
Alexander Larsson [Wed, 19 Aug 2009 15:21:18 +0000 (17:21 +0200)]
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

14 years agoAdd flags member for GObjectClass
Alexander Larsson [Wed, 19 Aug 2009 15:17:41 +0000 (17:17 +0200)]
Add flags member for GObjectClass

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

14 years agoAllocate GObjectNotifyQueue with g_slice instead of abusing g_list
Alexander Larsson [Wed, 19 Aug 2009 13:48:19 +0000 (15:48 +0200)]
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

14 years agoAdd gobject performance tests for threaded code
Alexander Larsson [Wed, 9 Sep 2009 15:08:57 +0000 (17:08 +0200)]
Add gobject performance tests for threaded code

This measures how much things like lock contention affects the gobject
code.

14 years agoAdd performance tests for GObject primitives
Alexander Larsson [Thu, 20 Aug 2009 12:34:51 +0000 (14:34 +0200)]
Add performance tests for GObject primitives

These are basic performance test for a couple of basic gobject
primitives:

* construction of simple objects. Simple is a bare gobject derived
  class with no properties, signals or interfaces.

* construction of complex objects. Complex is a gobject subclass
  with construct properties, normal properties, signals, and
  implements an interface.

* run-time type check of complex objects

* signal emissions

Lots of care is taken to try to make the results reproducible. Each
test is run for multible "rounds", where we try to make each round be
"not too short" in order to be significant wrt timer accuracy, but
also "not to long" to make the probability of some other random event
happening on the system (interrupts, other process scheduled, etc)
during the round less likely.
The current target round time is 4 msecs, which was picked without
rigour, but seems small wrt e.g. scheduler time.

For each test we then run the calculated round size for 60 seconds,
and then report the performance based on the minimal time of one
round. The model here is that any random stuff that happens during a
round can only slow it down, there is nothing that can make it go
faster, so the minimal time is the best estimate of how fast one round
goes.

The result is not ideal, even on a "idle" system the results vary
from round to round, but the variation seems to be less than 1%.
So, any performance difference reported by this test over 1% is
probably statistically significant.

Additionally the tests can be run with or without threads being
initialized. The script tests/gobject/run-performance.sh makes
it easy to produce a performance report for the current checkout.

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

14 years agoremove xdgmime test
Alexander Larsson [Fri, 2 Oct 2009 10:54:18 +0000 (12:54 +0200)]
remove xdgmime test

This is getting diverged from the xdgmime copy and we don't need it here.

14 years agoxdgmime - Correct the range checks for magic matching
Alexander Larsson [Fri, 2 Oct 2009 10:06:25 +0000 (12:06 +0200)]
xdgmime - Correct the range checks for magic matching

14 years agoRemove unnecessary includes
Alexander Larsson [Fri, 2 Oct 2009 10:06:15 +0000 (12:06 +0200)]
Remove unnecessary includes

14 years agoxdgmime - support the new case sensitive flag
Alexander Larsson [Fri, 2 Oct 2009 07:49:51 +0000 (09:49 +0200)]
xdgmime - support the new case sensitive flag

14 years agoxdgmime - support cache files with minor version 2
Alexander Larsson [Fri, 2 Oct 2009 07:48:35 +0000 (09:48 +0200)]
xdgmime - support cache files with minor version 2

14 years agoRead the new glob2 format with case sensitive flags
Alexander Larsson [Fri, 2 Oct 2009 07:46:33 +0000 (09:46 +0200)]
Read the new glob2 format with case sensitive flags

14 years agoDrop the VS8 project files from tarballs as they are unmaintained
Tor Lillqvist [Fri, 2 Oct 2009 09:43:21 +0000 (12:43 +0300)]
Drop the VS8 project files from tarballs as they are unmaintained

14 years agoUpdate VS9 project files to fix build
Pierre A. Joye [Fri, 2 Oct 2009 09:34:44 +0000 (12:34 +0300)]
Update VS9 project files to fix build

From bug #596784

14 years agoFix --runtime-libdir option
Matthias Clasen [Wed, 30 Sep 2009 03:06:45 +0000 (23:06 -0400)]
Fix --runtime-libdir option

For stable releases, it needs to take LT_REVISION into account, not
hardcode 0.

14 years agoBump version
Matthias Clasen [Wed, 30 Sep 2009 02:07:04 +0000 (22:07 -0400)]
Bump version

14 years ago2.22.1
Matthias Clasen [Wed, 30 Sep 2009 02:05:27 +0000 (22:05 -0400)]
2.22.1

14 years agoUpdates
Matthias Clasen [Wed, 30 Sep 2009 01:16:53 +0000 (21:16 -0400)]
Updates

14 years agoUpdated Serbian translation
Miloš Popović [Wed, 30 Sep 2009 03:05:31 +0000 (03:05 +0000)]
Updated Serbian translation

14 years agoUpdated Serbian translation
Miloš Popović [Wed, 30 Sep 2009 03:04:05 +0000 (03:04 +0000)]
Updated Serbian translation

14 years agoUpdated Serbian translation
Miloš Popović [Wed, 30 Sep 2009 03:02:15 +0000 (03:02 +0000)]
Updated Serbian translation