Fix various bugs and excessive stack usage that crept in the conversion
[platform/upstream/glib.git] / gobject / ChangeLog
index bac03f7..26ecc8a 100644 (file)
@@ -1,3 +1,528 @@
+Mon Mar 25 17:51:05 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * glib-mkenums.in (parse_entries): Fix various bugs and
+       excessive stack usage that crept in the conversion from
+       gtk-mkenums. (#74431)
+
+Mon Mar 25 17:25:57 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtype.c (g_type_free_instance): Wrap setting freed instance
+       memory to 0xaa in #ifdef G_ENABLE_DEBUG
+
+Thu Mar 21 01:28:14 2002  Tim Janik  <timj@gtk.org>
+
+       * gsignal.[hc]:
+       * gobject.[hc]: fix extraneous include.
+
+Tue Mar 19 18:57:12 2002  Tim Janik  <timj@gtk.org>
+
+       * gtype.c (check_add_interface_L): applied patch from Matthias Clasen
+       <maclas@gmx.de> to check for prerequisite of interfaces, fixes #74427.
+       fixed mutex recursion in his patch (we can't call g_type_is_a() while
+       holding a read lock).
+
+       * gparam.c (canonalize_key): cleanup.
+
+2002-03-13  Alexander Larsson  <alla@lysator.liu.se>
+
+       * gparam.c (canonalize_key):
+       Function to canonicalize parameter names. Faster than
+       using g_strcanon().
+       (g_param_spec_internal, param_spec_ht_lookup):
+       Use canonalize_key.
+
+2002-03-13  Erwann Chenede  <erwann.chenede@sun.com>
+        * gobject/gclosure.c  
+       * gobject/gobject.c 
+       * gobject/gsignal.c: fixed cast problems with function pointer
+       to avoid warnings (with forte compiler) (#73898)
+       
+2002-03-05  Sven Neumann  <sven@gimp.org>
+
+       * gvaluetransform.c (g_value_transforms_init): don't try to 
+       register undeclared value transform functions if G_GINT64_FORMAT
+       or G_GUINT64_FORMAT are undefined (#73586).
+
+2002-03-03  Tor Lillqvist  <tml@iki.fi>
+
+       * makefile.msc.in
+       * makefile.mingw.in: Rename testgruntime to testgobject here, too.
+
+Sun Mar  3 04:11:58 2002  Tim Janik  <timj@gtk.org>
+
+       * gobject.c: placed a comment about not changing CArray until we have
+       g_object_list_watched_closures().
+
+       * gparam.h (struct _GParamSpecClass): added padding.
+
+       * gobjectnotifyqueue.c (struct _GObjectNotifyQueue): abuse
+       g_list_alloc() to allocate GObjectNotifyQueue to et rid
+       of locking issues.
+
+Tue Feb 26 10:51:00 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * Makefile.am (testgobject_LDADD): Rename testgruntime
+       to testgobject.
+
+Sun Feb 24 22:08:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtypemodule.[ch] (g_type_module_add_interface): Make
+       GInterfaceInfo paramter const to correspond to the
+       conventions for the g_type_add_interface() functions.
+       (#72461, Miroslaw Dobrzanski-Neumann)
+
+Sat Feb 23 13:28:56 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtypeplugin.h (struct _GTypePluginClass): Add some
+       padding to the class.
+
+       * gclosure.h (struct _GClosure): Fix typo in comment.
+
+2002-02-20  Tor Lillqvist  <tml@iki.fi>
+
+       * gobject.def: Add g_value_set_object_take_ownership and
+       g_value_set_param_take_ownership.
+
+Wed Feb 20 22:55:15 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gobject.c: Fix implicit conversions between void * and 
+       function pointer (Miroslaw Dobrzanski-Neumann, #71963)
+
+Sun Feb 16 22:08:48 2002  Tim Janik  <timj@gtk.org>
+
+       * gobject.[hc]:
+       * gparam.[hc]: provide marshaller specific value_set_*_take_ownership()
+       variants.
+
+       * gvalue.h: shrink GValue's data contents to 2 unions.
+
+       * glib-genmarshal.c: fix release and realeas_check hackage by always
+       using _take_ownership() variants. directly access value contents if
+       G_ENABLE_DEBUG is not defined.
+
+       * gobject.h: add padding pointers to the class struct.
+
+Wed Feb 13 17:22:37 2002  Tim Janik  <timj@gtk.org>
+
+       * gtype.c (g_type_value_table_peek): fixed a check for node not being NULL.
+
+Wed Feb 13 06:53:50 2002  Tim Janik  <timj@gtk.org>
+
+       * gparam.c: remove extraneous redefinition of G_PARAM_SPEC_CLASS().
+
+Wed Feb 13 06:29:51 2002  Tim Janik  <timj@gtk.org>
+
+       * gvaluetransform.c: cosmetic cleanups, fixed [u]int64->string
+       conversions.
+
+       * ChangeLog: added entry from owen which went into the wrong
+       file.
+
+Fri Feb  8 23:52:27 2002  Owen Taylor  <otaylor@redhat.com>
+
+        * gobject/gvaluetransform.c: Register transformations for
+        gint64, guint64. (#70780, patch from Andy Wingo)
+
+2002-02-10  Hans Breuer  <hans@breuer.org>
+
+       * gvaluetransform.c : msvc 5.0 can't cast from uint64 to
+       double. Disable respective transform_func than.
+
+       * makefile.msc.in : build test programs
+
+Thu Jan 24 07:39:56 2002  Tim Janik  <timj@gtk.org>
+
+       * gobject.c (g_signal_connect_object): return gulong instead
+       of guint.
+
+Fri Jan 11 12:26:36 2002  Tim Janik  <timj@gtk.org>
+
+       * gparamspecs.c: fixed param_value_array_values_cmp(),
+       param_value_array_validate() and
+       param_value_array_set_default() to deal with NULL value
+       arrays.
+
+Wed Jan  9 05:23:27 2002  Tim Janik  <timj@gtk.org>
+
+       * gobject.h (G_OBJECT_WARN_INVALID_PROPERTY_ID): cosmetic fix.
+
+2002-01-05  Hans Breuer  <hans@breuer.org>
+
+       * makefile.msc.in : use -FImsvc_recommended_pragmas.h
+
+Fri Jan  4 04:36:46 2002  Tim Janik  <timj@gtk.org>
+
+       * gtype.h (G_TYPE_FLAG_RESERVED_ID_BIT): turn this into a GType,
+       so negating it works on 64bit platforms.
+
+2001-12-21  Tor Lillqvist  <tml@iki.fi>
+
+       * gobject.def: Add g_signal_get_invocation_hint.
+
+Tue Dec 18 21:39:57 2001  Tim Janik  <timj@gtk.org>
+
+       * testoverride.c: added some assertions to test
+       g_signal_get_invocation_hint().
+
+       * gsignal.[hc]: remove signal_id argument from
+       g_signal_chain_from_overridden(), the parameters are assumed to match
+       the innermost signal currently in emission for this instance.
+       added g_signal_get_invocation_hint() to figure the invocation hint
+       of the innermost signal emission of an instance.
+
+       * gsignal.c (g_signal_list_ids): fix G_BSEARCH_ARRAY_NODES() to
+       access a bsearch array and not a pointer to it (discovered by
+       Sven Neumann).
+
+2001-12-17  Anders Carlsson  <andersca@gnu.org>
+
+       * gtype.h (G_TYPE_FLAG_RESERVED_ID_BIT): Set the reserved bit
+       to (1 << 0) instead of (1 << 30). 
+
+2001-12-14  James Henstridge  <james@daa.com.au>
+
+       * Makefile.am: add rules to build it.
+
+       * testoverride.c: test program for closure override/chaining.
+
+Thu Dec 13 08:03:17 2001  Tim Janik  <timj@gtk.org>
+
+       * gsignal.c: implemented closure chaining.
+
+2001-12-08  Christopher Blizzard  <blizzard@redhat.com>
+
+       * gsignal.h (g_signal_connect): Explicitly add a cast to the last
+       argument so that the macro will work from C++.
+
+2001-12-06  Tor Lillqvist  <tml@iki.fi>
+
+       * makefile.mingw.in (gobject_OBJECTS): Add gsourceclosure.o.
+
+Mon Nov 26 09:55:12 2001  Tim Janik  <timj@gtk.org>
+
+       * gtype.h: typedef GType to gulong instead of gsize, if possible.
+
+       * gtype.c: fixups for GType being sizeof(long) wide (changed
+       UINT casts).
+       * gsignal.c:
+       * gclosure.c:
+       * gparam.c: likewise.
+
+Sun Nov 25 22:33:32 2001  Tim Janik  <timj@gtk.org>
+
+       * gtype.h: removed enum GTypeFundamentals. use macros
+       to provide the constant fundamental type IDs, so they
+       all return numbers of type GType, and not int.
+       sizeof(GTypeFundamentals) < sizeof(GType) problem reported
+       and fix sugegsted by Havoc.
+
+2001-11-23  Hans Breuer  <hans@breuer.org>
+
+       * gobject.def : updated externals
+
+Mon Nov 19 14:35:56 2001  Owen Taylor  <otaylor@redhat.com>
+       * *.h: Improve the detection of invalid includes by moving
+       the test outside the duplicate include guards.
+       * gsourceclosure.c (g_source_set_closure): Doc fix.
+
+Thu Nov 22 03:30:57 2001  Tim Janik  <timj@gtk.org>
+
+       * gvalue.h (G_TYPE_IS_VALUE): use g_type_check_is_value_type()
+       instead of g_type_value_table_peek().
+
+       * gtype.[hc] (type_check_is_value_type_U): speed up check
+       LOCK-less by caching lookups in node->mutatable_has_value_table.
+
+       * gtype.[hc]: removed locks where possible. partly based on
+       patches from owen and alex.
+
+Thu Nov 22 00:26:26 2001  Tim Janik  <timj@gtk.org>
+
+       * gtype.[hc]: provide G_TYPE_FUNDAMENTAL_SHIFT and
+       g_type_fundamental_next() to return next usable fundamental
+       type. use TypeNode pointers as type IDs.
+       
+2001-11-22  Tor Lillqvist  <tml@iki.fi>
+
+       * makefile.mingw.in (DEFINES): Set G_LOG_DOMAIN as in Makefile.am.
+
+       * gparamspecs.h (GOBJECT_VAR): Can't use GLIB_VAR here, as that
+       makes sense only when building libglib. GOBJECT_VAR is similar for
+       libgobject.
+
+       * gobject.def: Add g_param_spec_types, remove
+       g_type_fundamental_branch_last.
+
+Wed Nov 21 17:23:33 2001  Tim Janik  <timj@gtk.org>
+
+       * gparamspecs.[hc]: put newly created param spec types into a
+       global array.
+
+       * gboxed.[hc]: moved boxed types with _get_type() function here,
+       for: G_TYPE_CLOSURE, G_TYPE_VALUE, G_TYPE_VALUE_ARRAY,
+       G_TYPE_GSTRING.
+
+       * gtype.h: removed fundamental branch APIs and derived enum
+       values. define GType as gsize.
+
+2001-11-19  jacob berkman  <jacob@ximian.com>
+
+       * gobjectnotifyqueue.c: include glib-object.h rather than
+       gobject/gobject.h
+
+2001-11-16  Mark McLoughlin  <mark@skynet.ie>
+
+       * glib-mkenums.in: allow the enums name to not be on the same
+       line as the trailing '}'. (#64714)
+
+2001-11-18  Hans Breuer  <hans@breuer.org>
+
+       * makefile.msc.in : remove g_log_domain_gruntime usage
+
+Sat Nov 17 18:14:40 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * glib-genmarshal.c: Exit with non-zero exit status if
+       any errors were encountered.
+
+       * glib-genmarshal.c: Instead of generating gobject/gmarshal.h
+       #include only for the header, generate glib-object.h 
+       #include for both the header and body. (#63834)
+
+       * glib-genmarshal.c: Generate include guards around the 
+       content unless --nostdinc is specified.
+
+2001-11-17  Tor Lillqvist  <tml@iki.fi>
+
+       * gobject.def: Add g_pointer_type_register_static.
+
+2001-11-15  Tor Lillqvist  <tml@iki.fi>
+
+       * gobject.def: Reflect recent changes.
+
+Tue Nov 13 23:18:10 2001  Tim Janik  <timj@gtk.org>
+
+       * gsignal.[hc]: add API for chaining:
+       g_signal_chain_from_overridden() and g_signal_override_class_closure(),
+       implementation yet to come.
+
+       * gtype.[hc], Makefile.am: provide G_LOG_DOMAIN as compile flag.
+       
+       * gparam.[hc]: s/g_param_get/g_param_spec_get/ for get_nick,
+       get_name and get_blurb, to be consistent with the rest of the
+       g_param_spec_*() functions.
+       
+       * gparamspecs.[hc]: got rid of bogus GClosure paramspec.
+       G_TYPE_CLOSURE is a boxed type already.
+       
+Tue Nov 13 22:16:41 2001  Tim Janik  <timj@gtk.org>
+
+       * gtype.[hc]: API cleanups.
+       remove g_type_check_flags(), provide g_type_test_flags() as
+       a *private* function.
+       s/g_type_check_is_a/g_type_check_class_is_a/, private function.
+       s/g_type_instance_is_a/g_type_check_instance_is_a/, also private.
+
+Tue Nov 13 20:02:47 2001  Tim Janik  <timj@gtk.org>
+
+       * gparam.h: fix standard type macros.
+
+Wed Nov  7 00:56:00 2001  Tim Janik  <timj@gtk.org>
+
+       * gclosure.h: provide G_CLOSURE_N_NOTIFIERS() for people that need
+       to walk the notifier list (puhh, black magic, stay-away-warning ;).
+
+Mon Nov  5 18:59:08 2001  Tim Janik  <timj@gtk.org>
+
+       * gobject.h: 
+       * gsignal.h: we need signal.h for G_BREAKPOINT().
+
+Sun Nov  4 14:01:23 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gvaluetypes.[ch]: Add a function g_pointer_type_register_static()
+       to register a type derived from G_TYPE_POINTER.
+
+2001-11-03  Hans Breuer  <hans@breuer.org>
+
+       * makefile.msc.in : gobject-query needs gmarshal.[hc,stings]
+       so build it after them. Add gsourceclosure.obj. 
+
+       * gobject.def : removed duplicates, added mising
+
+Mon Oct 29 11:05:15 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * glib-mkenums.in: Generate glib-mkenums from glib-mkenums.in, 
+       substituting in path to perl.  (#63093, Dan Winship)
+
+       * Makefile.am (bin_SCRIPTS): Remove hack to copy glib-mkenums
+       from srcdir.
+
+2001-10-26  Tor Lillqvist  <tml@iki.fi>
+
+       * makefile.mingw.in: When running glib-genmarshal, set PATH to
+       include ../glib.
+
+2001-10-23  Tor Lillqvist  <tml@iki.fi>
+
+       * Makefile.am: (Win32): If we have built the MSVC import library,
+       install it. Install the gcc import library. Also support
+       uninstall.
+
+2001-10-13  Matthias Clasen  <matthiasc@poet.de>
+
+       * glib-genmarshal.1, glib-mkenums.1: Typo fixes.
+
+Fri Oct 12 18:40:18 2001  Tim Janik  <timj@gtk.org>
+
+       * cosmetic fixups.
+
+Wed Oct 10 17:25:22 2001  Joshua N Pritikin  <vishnu@pobox.com>
+
+       * glib-genmarshal.c gparamspecs.[ch] gtype.[ch] gvalue.h
+       gvaluecollector.h gvaluetypes.[ch]: Fill in missing support for
+       gint64 & guint64 (#59254).
+       
+       * Unconditionalize same (compile with or without G_HAVE_INT64).
+
+Wed Oct 10 15:38:58 2001  Joshua N Pritikin  <vishnu@pobox.com>
+
+       * gparamspecs.h (G_IS_PARAM_SPEC_FLAGS): Fix order of
+       *_PARAM_SPEC_ULONG defines.
+
+Thu Oct  4 01:10:52 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gparamspecs.h: Add missing G_HAVE_GINT64 conditionalization.
+
+Wed Oct  3 16:02:24 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * glib-genmarshal.c gparamspecs.[ch] gvalue.h 
+        gobject/gvaluetypes.[ch]: Add support for G_TYPE_INT64
+       and storing it in GValue (Patch from Mathieu Lacage, #59254.)
+
+2001-10-03  jacob berkman  <jacob@ximian.com>
+
+       * gtype.c (type_iface_retrieve_holder_info_Wm): 
+       (type_iface_vtable_init_Wm): 
+       (type_iface_vtable_finalize_Wm): 
+       (g_type_class_ref): 
+
+       * gobject.c (g_object_get_property): s/retrive/retrieve/
+
+2001-09-25  Tor Lillqvist  <tml@iki.fi>
+
+       * Makefile.am: Use new macros for .def file, and check for
+       MS_LIB_AVAILABLE, new rule to build MS import library.
+
+       * makefile.msc.in: Use same DLL and import library names as
+       libtool.
+       
+2001-09-21  Hans Breuer  <hans@breuer.org>
+
+       * gobject.def : updated externals
+
+2001-09-19  Tor Lillqvist  <tml@iki.fi>
+
+       * gobject.rc.in: Correct InternalName and OriginalFilename to
+       match what we actually produce.
+
+Tue Sep 18 23:09:02 2001  Tim Janik  <timj@gtk.org>
+
+       * gparam.[hc]: rename *nick and *blurb fields to catch
+       direct accesses in third party code.
+       provide g_param_get_nick(), g_param_get_blurb() and
+       g_param_get_name() accessors.
+
+Mon Sep 10 20:31:37 2001  Tim Janik  <timj@gtk.org>
+
+       * gobject.[hc]: removed extraneous GObject* returns from a
+       couple functions that are very unlikely to be used in nested.
+       changed gpointer->GObject* for a couple return values/arguments.
+       this fixes #50206.
+
+Mon Sep 10 19:27:47 2001  Tim Janik  <timj@gtk.org>
+
+       * gtype.[hc]:
+       g_type_add_interface*(): implement the ability to add an interface to
+       a type whose parents already conform to this interface.
+       such "overriding" interfaces, when initialized, are not just initialized
+       with 0, but with a copy of the interface they override.
+       g_type_interface_peek_parent(): new function, return the interface
+       that this interface "overrides", if any.
+
+       * testgruntime.c: test new interface stuff.
+
+2001-09-10  Alex Larsson  <alexl@redhat.com>
+
+        * gobject/gboxed.[ch]:
+        * gobject/gsourceclosure.c:
+        Removed is_refcounted and GBoxedInitFunc from
+        g_boxed_type_register_static().
+
+Sat Sep  8 14:13:57 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gobject/Makefile.am: Move gbsearcharray.[ch] to glib
+       as a private ininstalled header.
+
+Tue Sep  4 22:24:48 2001  Matthias Clasen  <matthiasc@poet.de>
+
+       * gobject.c (g_object_base_class_finalize): typo fix.
+
+Tue Sep  4 01:49:18 2001  Tim Janik  <timj@gtk.org>
+
+       * gsourceclosure.c: make closure_callback_funcs static,
+       added some g_return_if_fail() statements.
+
+Mon Aug 27 14:55:27 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gsourceclosure.[ch] (g_source_set_closure): Implement.
+
+       * gsourceclosure.[ch]: Add GType's for GIOChannel, GIOCondition.
+
+2001-08-17  James Henstridge  <james@daa.com.au>
+
+       * gobject.c (WeakRefStack): add an object member to the structure.
+       (weak_refs_notify): pass wstack->object as extra argument to
+       notify functions.
+       (g_object_weak_ref): set wstack->object when initialising
+       WeakRefStack.
+
+       * gobject.h (GWeakNotify): add second argument to prototype which
+       gives the pointer to where the object that is being disposed of
+       was.
+
+Wed Jul 18 19:42:31 2001  Tim Janik  <timj@gtk.org>
+
+        * gtype.h: if __GNUC__ is defined, inline a test for an exact type
+        match for instances and classes in G_TYPE_CHECK_INSTANCE_TYPE() and
+        G_TYPE_CHECK_CLASS_TYPE() before calling g_type_instance_is_a().
+
+Sun Aug 12 02:07:10 2001  Tim Janik  <timj@gtk.org>
+
+       * gvaluearray.[hc]: fix preallocation logic, support DISABLE_MEM_POOLS
+       properly, group value allocations.
+       (g_value_array_new): fix semantic of n_prealloced argument, so it's
+       really just about preallocation space.
+
+2001-07-23  Padraig O'Briain <Padraig.Obriain@Sun.COM>
+       
+       * gobject/gobjectnotifyqueue.c: fix unconditional check of
+       first GParamSpec in g_object_notify_queue_thaw(); to prevent
+       property notification being lost.
+
+2001-08-06  Sven Neumann  <sven@gimp.org>
+
+       * gobject.[ch]: 
+       added new functions g_object_[add|remove]_weak_pointer().
+
+2001-08-01  Sven Neumann  <sven@gimp.org>
+
+       * gsignal.h: added convenience macro g_signal_connect_after().
+
+2001-07-29  Hans Breuer  <hans@breuer.org>
+
+       * gobject.def : updated externals
+
 2001-07-20  Hans Breuer  <hans@breuer.org>
 
        * gobject.def : updated externals