1. 06 Oct, 2013 1 commit
    • Dan Winship's avatar
      Fix overloading of "source" and "target" terminology in GBinding · 8e17040c
      Dan Winship authored
      GBindingTransformFunc called its arguments "source_value" and
      "target_value", but in the transform_from function of a bidirectional
      binding, "source_value" comes from the target object, and
      "target_value" comes from the source object, which quickly gets
      confusing if you need to use g_binding_get_source(), etc, in the
      function.
      
      Of course developers can call their transform function arguments
      whatever they want, but many will copy from the headers/docs to start
      out, so use less confusing names here ("from_value" and "to_value").
      
      Also, fix the documentation to describe the bidirectional case
      correctly.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=709440
      8e17040c
  2. 02 Oct, 2013 1 commit
  3. 19 Sep, 2013 1 commit
  4. 02 Sep, 2013 2 commits
  5. 27 Aug, 2013 1 commit
    • Dan Winship's avatar
      gtype: fix a no-op assertion · 34e1a537
      Dan Winship authored
      g_type_class_add_private() was doing
      
          g_assert (node->data->instance.private_size <= 0xffff);
      
      but that field is a guint16, so the check was a no-op. (Noticed by
      clang, but not gcc for some reason.) Fix it to do the math in a gssize
      variable and do the bounds checking there before updating the struct
      field.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=706888
      34e1a537
  6. 22 Aug, 2013 1 commit
  7. 17 Aug, 2013 3 commits
    • Matthias Clasen's avatar
      Start using TAP · 0e9f9867
      Matthias Clasen authored
      Convert {glib,gobject,gio}/tests to use the automake TAP driver
      and test harness instead of gtester. To do so, we add a glib-tap.mk
      that provides the same interface as glib.mk, except for the
      reporting and coverage testing functionality. Eventually, we may
      want to replace glib.mk with it. I've not yet converted the
      toplevel tests/ directory, since it mixes gtestutils tests with
      other binaries.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=692125
      0e9f9867
    • Dan Winship's avatar
      update .gitignores · f550c0dc
      Dan Winship authored
      f550c0dc
    • Dan Winship's avatar
      build: fix dtrace-related warnings · fd5b1939
      Dan Winship authored
      Fix the warnings when compiling and linking the probes files by
      calling dtrace with all the -W flags removed from CFLAGS (since dtrace
      generates bad C code), and with CC set to "libtool --mode=compile ..."
      (so that it will output a proper .lo file and libtool won't warn when
      linking it into the .la).
      
      https://bugzilla.gnome.org/show_bug.cgi?id=693335
      fd5b1939
  8. 14 Aug, 2013 1 commit
  9. 04 Aug, 2013 1 commit
  10. 29 Jul, 2013 2 commits
  11. 27 Jul, 2013 2 commits
    • Rico Tzschichholz's avatar
      Fix a typo · 023e3b31
      Rico Tzschichholz authored
      Introduced by 3b01cbe8
      023e3b31
    • Emmanuele Bassi's avatar
      Add macros and symbols for private data on dynamic types · ca6b93d0
      Emmanuele Bassi authored
      We need a TypeName_private_offset variable defined by the macros used to
      register dynamic types. We also need to call the adjust_private_offset()
      function inside class_init(). G_ADD_PRIVATE_DYNAMIC only sets the size
      of the private data structure, and relies on the behaviour of the
      g_type_class_adjuset_private_offset() function to register the private
      data structure at class init time if passed a value greater than zero.
      
      This allows using G_PRIVATE_OFFSET with dynamic types.
      ca6b93d0
  12. 26 Jul, 2013 1 commit
  13. 22 Jul, 2013 2 commits
  14. 21 Jul, 2013 3 commits
  15. 20 Jul, 2013 1 commit
  16. 18 Jul, 2013 1 commit
  17. 13 Jul, 2013 2 commits
  18. 03 Jul, 2013 1 commit
  19. 24 Jun, 2013 5 commits
    • Emmanuele Bassi's avatar
      Rename the generated private data getter function · 54cc4363
      Emmanuele Bassi authored
      As it turns out, we have examples of internal functions called
      type_name_get_private() in the wild (especially among older libraries),
      so we need to use a name for the per-instance private data getter
      function that hopefully won't conflict with anything.
      54cc4363
    • Emmanuele Bassi's avatar
    • Emmanuele Bassi's avatar
      gobject: Add private field access macros · 39ba7c81
      Emmanuele Bassi authored
      Similar to G_STRUCT_MEMBER and G_STRUCT_MEMBER_P, but automatically using
      the G_PRIVATE_OFFSET macro.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=700035
      39ba7c81
    • Emmanuele Bassi's avatar
      Add G_PRIVATE_OFFSET · d91d114a
      Emmanuele Bassi authored
      A macro that evaluates to the offset of a field inside an instance
      private data structure.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=700035
      d91d114a
    • Emmanuele Bassi's avatar
      Allow registering instance private data during get_type() · d3dec6ec
      Emmanuele Bassi authored
      For static types, it should be possible to register a private data
      structure right when we are registering the type, i.e. from the
      get_type() implementation. By allowing this, we can take advantage of
      the existing type definition macros to cut down the amount of code
      necessary (as well as the knowledge baggage) when creating a new type.
      
      The main issue with this new feature is that it cannot be mixed with the
      old idiomatic way of adding private instance data by calling a function
      in the middle of the class_init() implementation, as that imposes the
      additional constraint of initializing the whole type hierarchy in order
      to retrieve the offset of the private data in the GTypeInstance
      allocation.
      
      For this reason we are going to follow a two-step process; in the first
      step, we are going to introduce the new (semi-private) API to register
      the intent to add private instance data from within the get_type()
      implementation, and hide it behind a macro; at the same time, the
      G_DEFINE_TYPE_EXTENDED macro is going to be modified so that it will
      register the private instance data if the macro was used, using a new
      (semi-private) function as well. Once we have migrated all our code, we
      will make the first new function perform the actual private data
      registration, and turn the second new function into a no-op. This should
      guarantee a transparent migration of existing code to the new idiomatic
      form.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=700035
      d3dec6ec
  20. 17 Jun, 2013 1 commit
  21. 12 Jun, 2013 3 commits
  22. 10 Jun, 2013 1 commit
    • Allison Karlitskaya's avatar
      GObject: turn add-property-after-init to a warning · c1e32a5c
      Allison Karlitskaya authored
      We have turned up enough cases of this being done (including GTK API
      allowing apps to do this to GtkSettings well after it has been
      instantiated) that it is clear that we cannot really break this feature
      while claiming to be backwards compatible.
      
      For that reason, it becomes a warning rather than a critical (ie: it is
      still well-defined behaviour, but you are discouraged from doing it).
      
      The intention is to keep this feature for at least the next while.
      A given GObjectClass will be able to avoid using GParamSpec pool for as
      long as you don't install properties after init.  If you do that, you
      will get a warning and we will devolve to using GParamSpecPool.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=698614
      c1e32a5c
  23. 01 Jun, 2013 1 commit
    • Allison Karlitskaya's avatar
      Rework the build system for a new tests approach · f9eb9eed
      Allison Karlitskaya authored
      Perform a substantial cleanup of the build system with respect to
      building and installing testcases.
      
      First, Makefile.decl has been renamed glib.mk and substantially
      expanded.  We intend to add more stuff here in the future, like canned
      rules for mkenums, marshallers, resources, etc.
      
      By default, tests are no longer compiled as part of 'make'.  They will
      be built when 'make check' is run.  The old behaviour can be obtained
      with --enable-always-build-tests.
      
      --disable-modular-tests is gone (because tests are no longer built by
      default).  There is no longer any way to cause 'make check' to be a
      no-op, but that's not very useful anyway.
      
      A new glibtests.m4 file is introduced.  Along with glib.mk, this
      provides for consistent handling of --enable-installed-tests and
      --enable-always-build-tests (mentioned above).
      
      Port our various test-installing Makefiles to the new framework.
      
      This patch substantially improves the situation in the toplevel tests/
      directory.  Things are now somewhat under control there.  There were
      some tests being built that weren't even being run and we run those now.
      The long-running GObject performance tests in this directory have been
      removed from 'make check' because they take too long.
      
      As an experiment, 'make check' now runs the testcases on win32 builds,
      by default.  We can't run them under gtester (since it uses a pipe to
      communicate with the subprocess) so just toss them in TESTS.  Most of
      them are passing on win32.
      
      Things are not quite done here, but this patch is already a substantial
      improvement.  More to come.
      f9eb9eed
  24. 29 May, 2013 2 commits