glib/docs/reference
David Zeuthen 11e01802ab gdbus-codegen: Ensure that generated skeletons are MT-safe
For example, if setting a property on a skeleton from another thread
than where it was constructed, the idle handler responsible for
emitting the PropertiesChanged() signal could run immediately and
clear skeleton->priv->changed_properties_idle_source causing
g_source_unref() to be called with a NULL pointer. This race was
easily be fixed by adding a lock to the skeleton object.

In addition to fixing this race, also move the code for setting up the
idle handler to a class handler for the GObject::notify signal. This
change allows use of g_object_freeze_notify() and g_object_thaw_notify()
to perform atomic property changes from another thread than the one
that the skeleton was created in.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2011-05-15 12:38:24 -04:00
..
gio gdbus-codegen: Ensure that generated skeletons are MT-safe 2011-05-15 12:38:24 -04:00
glib Rename g_unix_pipe_flags to g_unix_open_pipe 2011-05-03 23:34:17 -04:00
gobject Add a generic libffi based marshaller to libgobject 2011-04-08 17:34:44 -04:00
.gitignore .gitignore manpages (*.1) 2010-05-24 23:21:01 -04:00
AUTHORS Initial revision 1999-08-16 17:58:30 +00:00
ChangeLog Update README files to refer to git 2009-03-31 19:39:16 -04:00
COPYING Initial revision 1999-08-16 17:58:30 +00:00
Makefile.am gio/ docs/reference/gio Merged gio-standalone into glib. 2007-11-26 16:13:05 +00:00
NEWS Initial revision 1999-08-16 17:58:30 +00:00
README Added some simple build instructions. 1999-08-16 18:28:01 +00:00

This package contains the reference documentation
for GLib. For more information about Glib,
see:

 http://www.gtk.org

For information about contributing to the
GLib/GTK+ reference documentation project, see:

 http://www.gtk.org/rdp/

The GLib reference documentation is freely redistributable,
see the file COPYING for details.


REQUIREMENTS
============

To build the documentation, you must have the gtk-doc
package installed. To rebuild the template files,
you must have the current version of the GLib
header files installed.


BUILD
=====

First, run configure to generate the makefiles for this
module. There is one option specific to this package

  --with-html-dir=DIR   top of installed HTML documentation tree


The Makefiles for this module define three targets:

 templates:
  
  Scan the headers and merge the results with the current 
  template files

 sgml:

  Generate SGML files using the DocBook DTD from
  the template files

 html:

  Generate HTML from the SGML files.

To build the documentation, do:

 make sgml
 make html

You should only run the 'make templates' step if you
need to regenerate the templates for a more recent
version of the GLib sources.


INSTALLATION
============

 make install