platform/upstream/gobject-introspection.git
14 years agoAdd support for GArrays: add g_type_info_get_array_type() and properly scan GArray...
Tomeu Vizoso [Fri, 30 Apr 2010 16:15:23 +0000 (18:15 +0200)]
Add support for GArrays: add g_type_info_get_array_type() and properly scan GArray args

Based on a previous patch by C. Scott Ananian <cscott@litl.com>

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

14 years ago[annotationparser] Disable warning
Johan Dahlin [Wed, 28 Apr 2010 18:25:53 +0000 (15:25 -0300)]
[annotationparser] Disable warning

14 years agoWarn about annotations for unknown args
Tomeu Vizoso [Wed, 28 Apr 2010 12:32:14 +0000 (14:32 +0200)]
Warn about annotations for unknown args

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

14 years agoKeep valgrind happy in a test
Tomeu Vizoso [Tue, 27 Apr 2010 13:15:10 +0000 (15:15 +0200)]
Keep valgrind happy in a test

14 years agoAdd test for virtual method with a default implementation
Tomeu Vizoso [Tue, 27 Apr 2010 08:22:33 +0000 (10:22 +0200)]
Add test for virtual method with a default implementation

14 years ago[glib] make g_file_set_contents() take uint8*, not utf8
Dan Winship [Wed, 14 Apr 2010 18:16:44 +0000 (14:16 -0400)]
[glib] make g_file_set_contents() take uint8*, not utf8

(We ought to do this for g_file_get_contents() as well, but that would
be inconvenient for gjs at the moment, so I'm not.)

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

14 years agoNegative test case for bad (out) case, not setting the *out_val in a (transfer full...
Zach Goldberg [Wed, 21 Apr 2010 03:56:44 +0000 (23:56 -0400)]
Negative test case for bad (out) case, not setting the *out_val in a (transfer full) case

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

14 years ago* docs/g-ir-scanner.1: Man page for g-ir-scanner(1) had long options with three dashe...
Saleem Ansari [Mon, 26 Apr 2010 11:12:11 +0000 (16:42 +0530)]
* docs/g-ir-scanner.1: Man page for g-ir-scanner(1) had long options with three dashes, changed to two dashes.

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

14 years agoAdd tests for unions
Tomeu Vizoso [Fri, 23 Apr 2010 14:32:08 +0000 (16:32 +0200)]
Add tests for unions

14 years agoAdd tests for non-gtype Enum
Tomeu Vizoso [Thu, 22 Apr 2010 13:11:29 +0000 (15:11 +0200)]
Add tests for non-gtype Enum

14 years agoUpdate gir/Everything-1.0-expected.gir
Tomeu Vizoso [Thu, 22 Apr 2010 13:09:55 +0000 (15:09 +0200)]
Update gir/Everything-1.0-expected.gir

14 years agoAdd tests for GAsyncReadyCallback
Tomeu Vizoso [Thu, 22 Apr 2010 12:57:35 +0000 (14:57 +0200)]
Add tests for GAsyncReadyCallback

14 years agoAdd new tests for multiple callback calls during function invokation for scope call
Zach Goldberg [Wed, 21 Apr 2010 02:34:15 +0000 (22:34 -0400)]
Add new tests for multiple callback calls during function invokation for scope call

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

14 years ago[everything] Depend on cairo properly
Johan Dahlin [Wed, 21 Apr 2010 02:04:47 +0000 (23:04 -0300)]
[everything] Depend on cairo properly

Don't try to build the everything library nor the gir if we
can't find cairo. Pass in the right flags so it can be built
when cairo is not in the same prefix as the rest of the dependencies.

14 years agoAdd missing build dependency for GIMarshallingTests on GObject-2.0.gir
Colin Walters [Sun, 18 Apr 2010 19:55:34 +0000 (15:55 -0400)]
Add missing build dependency for GIMarshallingTests on GObject-2.0.gir

Also consistently specify --add-include-path.

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

14 years agoAdd --disable-tests configure flag
Colin Walters [Sun, 18 Apr 2010 19:46:38 +0000 (15:46 -0400)]
Add --disable-tests configure flag

This allows us to not hard depend on cairo.

14 years agoUpdate Everything-1.0-expected.gir for recent changes GOBJECT_INTROSPECTION_0_6_10
Colin Walters [Sun, 18 Apr 2010 18:11:43 +0000 (14:11 -0400)]
Update Everything-1.0-expected.gir for recent changes

14 years agoAdd tests for vfuncs in classes
Tomeu Vizoso [Sun, 18 Apr 2010 14:26:29 +0000 (10:26 -0400)]
Add tests for vfuncs in classes

14 years agoAdd tests for vfuncs in interfaces
Tomeu Vizoso [Sat, 17 Apr 2010 22:27:57 +0000 (18:27 -0400)]
Add tests for vfuncs in interfaces

14 years agoAdd a bunch of new tests for nullable args in Everything module
Zach Goldberg [Sat, 17 Apr 2010 17:37:54 +0000 (13:37 -0400)]
Add a bunch of new tests for nullable args in Everything module

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

14 years agoUpdate tests for new fields in Everything module
Zach Goldberg [Sat, 17 Apr 2010 16:02:25 +0000 (12:02 -0400)]
Update tests for new fields in Everything module

14 years agoUse a pointer to a known type as a member of GIMarshallingTestsNotSimpleStruct
Tomeu Vizoso [Fri, 16 Apr 2010 18:34:50 +0000 (14:34 -0400)]
Use a pointer to a known type as a member of GIMarshallingTestsNotSimpleStruct

14 years agoAdd a simple callback type which has no arguments or return values
Zach Goldberg [Thu, 15 Apr 2010 21:01:11 +0000 (17:01 -0400)]
Add a simple callback type which has no arguments or return values

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

14 years agoAdd foreign struct funcs to Everything
Tomeu Vizoso [Thu, 15 Apr 2010 21:44:42 +0000 (17:44 -0400)]
Add foreign struct funcs to Everything

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

14 years agoAdd *~ to .gitignore
Tomeu Vizoso [Wed, 14 Apr 2010 18:39:15 +0000 (14:39 -0400)]
Add *~ to .gitignore

14 years agoIf needed, convert from camelcase to underscores when stripping the prefix of constants
Tomeu Vizoso [Tue, 13 Apr 2010 22:56:34 +0000 (18:56 -0400)]
If needed, convert from camelcase to underscores when stripping the prefix of constants

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

14 years agoAdd GIMarshallingTests typelib
Tomeu Vizoso [Tue, 13 Apr 2010 22:58:34 +0000 (18:58 -0400)]
Add GIMarshallingTests typelib

Fixes #615299

14 years agoUpdate Everything-1.0-expected.gir
Tomeu Vizoso [Tue, 13 Apr 2010 22:46:57 +0000 (18:46 -0400)]
Update Everything-1.0-expected.gir

14 years agoAssert input values in Everything funcs
Tomeu Vizoso [Fri, 9 Apr 2010 14:10:34 +0000 (16:10 +0200)]
Assert input values in Everything funcs

14 years agoCorrectly use ffi_closure_alloc(), fixing mmap permissions error
Owen W. Taylor [Wed, 7 Apr 2010 21:48:52 +0000 (17:48 -0400)]
Correctly use ffi_closure_alloc(), fixing mmap permissions error

This restores the reverted-commit ed8634d:

    Author: Dan Winship <danw@gnome.org>
    Date:   Mon Apr 5 14:05:52 2010 -0400

    g_callable_info_prepare_closure: handle mmap permissions error

    When SELinux or similar is active, a process may not be able to mmap()
    a segment that is both writable and executable, which would causing
    g_callable_info_prepare_closure() to fail. Libffi has a workaround for
    this problem though (it maps the same non-anonymous region twice, once
    writable and once executable, and returns two separate pointers to
    it), so use that.

But with an added fix, when using ffi_closure_alloc(), we need to use
ffi_prep_closure_loc() so we can pass in the executable address of the
trampoline separately from the writable address, rather than the
deprecated ffi_prep_closure().

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

14 years agoRevert "g_callable_info_prepare_closure: handle mmap permissions error"
Colin Walters [Wed, 7 Apr 2010 19:20:48 +0000 (15:20 -0400)]
Revert "g_callable_info_prepare_closure: handle mmap permissions error"

This reverts commit ed8634ddf73a56cb1935fd87254b3c6c04352893.

This commit caused crashes in gjs/gnome-shell, which we're still trying
to track down.  See: http://bugzilla.gnome.org/615078

14 years ago[glib] Add GKeyFile annotations
Johan Dahlin [Wed, 7 Apr 2010 15:19:01 +0000 (12:19 -0300)]
[glib] Add GKeyFile annotations

14 years ago[configure.ac] Post release version bump
Colin Walters [Thu, 18 Mar 2010 21:54:30 +0000 (17:54 -0400)]
[configure.ac] Post release version bump

14 years ago[giroffsets] Also update this code for change to signed enumeration values
Colin Walters [Thu, 18 Mar 2010 21:46:56 +0000 (17:46 -0400)]
[giroffsets] Also update this code for change to signed enumeration values

14 years agog_callable_info_prepare_closure: handle mmap permissions error
Dan Winship [Mon, 5 Apr 2010 18:05:52 +0000 (14:05 -0400)]
g_callable_info_prepare_closure: handle mmap permissions error

When SELinux or similar is active, a process may not be able to mmap()
a segment that is both writable and executable, which would causing
g_callable_info_prepare_closure() to fail. Libffi has a workaround for
this problem though (it maps the same non-anonymous region twice, once
writable and once executable, and returns two separate pointers to
it), so use that.

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

14 years ago[cairo] Mark add structs as foreign
Johan Dahlin [Thu, 25 Mar 2010 12:34:20 +0000 (09:34 -0300)]
[cairo] Mark add structs as foreign

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

14 years agoAdd support for foreign structs
Johan Dahlin [Fri, 26 Mar 2010 02:12:12 +0000 (23:12 -0300)]
Add support for foreign structs

Foreign structs are special in the sense that there might
be native bindings (for instance PyCairo for PyGI) that provides
the same functionallity as the introspected variant.

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

14 years ago[docs] Remove reference to girwriter.c
Johan Dahlin [Fri, 26 Mar 2010 01:30:42 +0000 (22:30 -0300)]
[docs] Remove reference to girwriter.c

14 years ago[typelib] Remove space/indent mismatch
Johan Dahlin [Wed, 24 Mar 2010 18:20:14 +0000 (15:20 -0300)]
[typelib] Remove space/indent mismatch

14 years agoRemove unused file girwriter.c
Johan Dahlin [Thu, 25 Mar 2010 12:17:20 +0000 (09:17 -0300)]
Remove unused file girwriter.c

14 years agoRemove trailing whitespace
Johan Dahlin [Thu, 25 Mar 2010 12:17:03 +0000 (09:17 -0300)]
Remove trailing whitespace

14 years agoRevert accidentally committed attribute
Johan Dahlin [Wed, 24 Mar 2010 18:40:28 +0000 (15:40 -0300)]
Revert accidentally committed attribute

14 years ago[MAINTAINERS] Remove Matthias
Johan Dahlin [Wed, 24 Mar 2010 18:02:33 +0000 (15:02 -0300)]
[MAINTAINERS] Remove Matthias

14 years ago[girepository] Remove trailing whitespace
Johan Dahlin [Wed, 24 Mar 2010 18:00:06 +0000 (15:00 -0300)]
[girepository] Remove trailing whitespace

14 years ago[cairo] Remove unused glib types
Johan Dahlin [Wed, 24 Mar 2010 17:55:22 +0000 (14:55 -0300)]
[cairo] Remove unused glib types

14 years agoEnumerations can be negative
Colin Walters [Wed, 17 Mar 2010 23:28:01 +0000 (19:28 -0400)]
Enumerations can be negative

Change the internal type for ValueBlob to gint32, since it's perfectly
valid for enumerations to have negative values.

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

14 years ago[configure.ac] Post-release version bump
Colin Walters [Wed, 10 Mar 2010 13:53:56 +0000 (08:53 -0500)]
[configure.ac] Post-release version bump

14 years ago[MAINTAINERS] Add Colin Walters <walters@verbum.org>
Colin Walters [Wed, 10 Mar 2010 13:50:49 +0000 (08:50 -0500)]
[MAINTAINERS] Add Colin Walters <walters@verbum.org>

14 years agoFix g_file_enumerator_next_files_finish annotation
Maxim Ermilov [Wed, 17 Mar 2010 21:46:02 +0000 (17:46 -0400)]
Fix g_file_enumerator_next_files_finish annotation

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

14 years agoSmall fix to handle @attributes: .... (.....) as a parameter to a function
Alan Knowles [Mon, 15 Mar 2010 15:05:46 +0000 (23:05 +0800)]
Small fix to handle @attributes:  .... (.....)  as a parameter to a function

Previously crashed out, now just ignores the attribute

14 years ago[glib] Add g_convert annotations
Johan Dahlin [Mon, 15 Mar 2010 13:48:57 +0000 (10:48 -0300)]
[glib] Add g_convert annotations

14 years agoMerge remote branch 'origin'
Johan Dahlin [Wed, 10 Mar 2010 15:01:15 +0000 (12:01 -0300)]
Merge remote branch 'origin'

14 years ago[everything] Add alternative boxed constructors
Johan Dahlin [Tue, 9 Mar 2010 15:28:22 +0000 (12:28 -0300)]
[everything] Add alternative boxed constructors

14 years ago[gio-2.0.c] Annotate g_file_replace
Colin Walters [Mon, 8 Mar 2010 20:22:03 +0000 (15:22 -0500)]
[gio-2.0.c] Annotate g_file_replace

14 years ago[everything] Add to expected .gir for last comment
Colin Walters [Thu, 4 Mar 2010 17:22:13 +0000 (12:22 -0500)]
[everything] Add to expected .gir for last comment

14 years ago[everything] Add some "torture" test functions with baroque signatures
Colin Walters [Thu, 4 Mar 2010 14:32:16 +0000 (09:32 -0500)]
[everything] Add some "torture" test functions with baroque signatures

We didn't have good coverage of say in arguments after out.

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

14 years agoAdd a test function with an out argument and some other after that
Johan Bilien [Mon, 1 Mar 2010 22:32:32 +0000 (17:32 -0500)]
Add a test function with an out argument and some other after that

Useful to debug case https://bugzilla.gnome.org/show_bug.cgi?id=611529

14 years ago[giscanner] Catch CalledProcessError and OSError
Johan Dahlin [Wed, 17 Feb 2010 16:53:07 +0000 (14:53 -0200)]
[giscanner] Catch CalledProcessError and OSError

Instead of catching all errors, including AttributeError,
TypeError and NameError.

14 years ago[scanner] Catch OSError too when checking for libtool
Colin Walters [Wed, 17 Feb 2010 16:18:18 +0000 (11:18 -0500)]
[scanner] Catch OSError too when checking for libtool

If we don't have permission to execute the libtool binary, we'd
just throw here which is wrong.  Fix this by catching all
exceptions.

14 years agoFix glib:error-quark scanning for unregistered enum types
Owen W. Taylor [Tue, 22 Dec 2009 16:10:33 +0000 (11:10 -0500)]
Fix glib:error-quark scanning for unregistered enum types

The enumeration type for an error might not be introspected
and registered with GObject (this is, in particular, true for
the errors in GLib itself). So, as a fallback search, through
all enum types in the module.

Add a special case for the aberrant GIOErrorEnum and a warning
if resolution completely fails.

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

14 years agoFix unittests, add missing allow-none
Johan Dahlin [Fri, 12 Feb 2010 16:03:14 +0000 (14:03 -0200)]
Fix unittests, add missing allow-none

Colin should remember to run `make check' before comitting!

14 years agoDelete stray g_return_if_fail
Colin Walters [Thu, 11 Feb 2010 22:49:51 +0000 (17:49 -0500)]
Delete stray g_return_if_fail

If g_alloca failed we're pretty much screwed, and g_return_if_fail
is for API entry points, not internal assertions.

14 years agoAssume allow-none for GCancellable
Colin Walters [Tue, 15 Dec 2009 22:39:00 +0000 (17:39 -0500)]
Assume allow-none for GCancellable

All GCancellables are allow-none, this allows us to remove a lot
of custom annotations.

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

14 years agoFix Alignment Errors.
Kedar Sovani [Wed, 21 Oct 2009 11:28:12 +0000 (13:28 +0200)]
Fix Alignment Errors.

Signed-off-by: Kedar Sovani <kedars@marvell.com>
https://bugzilla.gnome.org/show_bug.cgi?id=606139

14 years ago[g-ir-compiler] Slightly less lame error messages
Colin Walters [Thu, 11 Feb 2010 22:18:28 +0000 (17:18 -0500)]
[g-ir-compiler] Slightly less lame error messages

To make things really better we should track the line origin of
element from the .gir file (and actually we need to do better
checking in the scanner), but this is slightly less lame.

14 years agoConform last patch with pep8
Colin Walters [Thu, 11 Feb 2010 21:42:59 +0000 (16:42 -0500)]
Conform last patch with pep8

14 years ago[scanner] Print error instead of throwing for unknown include
Colin Walters [Thu, 11 Feb 2010 21:03:59 +0000 (16:03 -0500)]
[scanner] Print error instead of throwing for unknown include

We should avoid exceptions being propagated to the toplevel.

14 years agotests: Do not include built source in the distribution
Johan Bilien [Mon, 1 Feb 2010 20:18:27 +0000 (15:18 -0500)]
tests: Do not include built source in the distribution

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

14 years agogir: Do not include generated gir files in the distribution
Johan Bilien [Mon, 1 Feb 2010 20:17:57 +0000 (15:17 -0500)]
gir: Do not include generated gir files in the distribution

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

14 years agoincrease limit of GIRealInfo's ref_count
Maxim Ermilov [Sun, 24 Jan 2010 21:26:29 +0000 (00:26 +0300)]
increase limit of GIRealInfo's ref_count

New limit is 0x7FFFFFFF.

14 years agotests: Add the scope for callbacks in expected girs
Johan Bilien [Mon, 18 Jan 2010 15:03:11 +0000 (10:03 -0500)]
tests: Add the scope for callbacks in expected girs

following my previous patch to systematically specify the scope in
callbacks. Had forgotten to add these.

14 years agoscanner: Always explicitely set the scope of callbacks
Johan Bilien [Thu, 14 Jan 2010 22:02:36 +0000 (17:02 -0500)]
scanner: Always explicitely set the scope of callbacks

default to 'call' as stated in the annotation documentation.

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

14 years agoannotate g_filename_to_uri
Dan Winship [Wed, 13 Jan 2010 20:39:40 +0000 (15:39 -0500)]
annotate g_filename_to_uri

14 years agoCorrectly cast to a CommonBlob when looking up embedded types
Colin Walters [Thu, 7 Jan 2010 21:12:15 +0000 (16:12 -0500)]
Correctly cast to a CommonBlob when looking up embedded types

When looking at an embedded type (e.g. a Callback after a Field), the
offset we put in the info structure was to the CallbackBlob itself.

However the code in g_type_info_get_interface assumed that the offset
was to a SimpleTypeBlob, which it wasn't.

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

14 years agoDon't remove .c file for dumper binary
Owen W. Taylor [Sun, 3 Jan 2010 15:50:58 +0000 (10:50 -0500)]
Don't remove .c file for dumper binary

We're going to remove the entire temporary directory,
so there's no point in explicitly removing just the .c file
we create; leaving the .c file behind makes it easier to debug
problems.

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

14 years agoRemove tabs, fixes make check
Johan Dahlin [Fri, 8 Jan 2010 19:08:44 +0000 (17:08 -0200)]
Remove tabs, fixes make check

14 years agoAdd an --add-init-section argument
Damien Lespiau [Wed, 23 Dec 2009 23:15:21 +0000 (00:15 +0100)]
Add an --add-init-section argument

One might need to call some init functions before being able to call
get_type() to create the types of a library.

--add-init-section let the user insert some initialization code in the
introspection program.

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

15 years agoThe private header should be included in girffi.c
Johan Dahlin [Thu, 31 Dec 2009 16:37:21 +0000 (17:37 +0100)]
The private header should be included in girffi.c

Not in the public girffi.h.

15 years ago__extension__ can be put in front of expressions
Damien Lespiau [Sat, 26 Dec 2009 14:32:20 +0000 (15:32 +0100)]
__extension__ can be put in front of expressions

glib uses __extension__ in macros dealing with 64 bits integer such as
GUINT64_SWAP_LE_BE().

To quote the GCC manual:
  `-pedantic' and other options cause warnings for many GNU C extensions.  You
  can prevent such warnings within one expression by writing `__extension__'
  before the expression.

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

15 years agoFix typo in the help string of the --no-libtool argument
Damien Lespiau [Wed, 23 Dec 2009 20:35:12 +0000 (21:35 +0100)]
Fix typo in the help string of the --no-libtool argument

--no-libtool means that one does not want to use libtool to compile the
introspection program.

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

15 years agoSimplify Gio-2.0.gir rules
Johan Dahlin [Thu, 31 Dec 2009 14:35:49 +0000 (15:35 +0100)]
Simplify Gio-2.0.gir rules

Also make sure to add cflags from gio-unix-2.0 to avoid a warning

15 years agoAdd missing include girffi-private.h
Johan Dahlin [Thu, 31 Dec 2009 14:29:43 +0000 (15:29 +0100)]
Add missing include girffi-private.h

15 years agoInclude Python.h earlier
Johan Dahlin [Thu, 31 Dec 2009 14:26:33 +0000 (15:26 +0100)]
Include Python.h earlier

This avoids pyconfig.h:1028:1: warning: "_POSIX_C_SOURCE" redefined

15 years agoUse AM_V_GEN more a more quiet build
Johan Dahlin [Thu, 31 Dec 2009 14:23:16 +0000 (15:23 +0100)]
Use AM_V_GEN more a more quiet build

Also suppress a bit more using @

15 years agoMake sure the macros work without silent rules
Johan Dahlin [Wed, 30 Dec 2009 23:21:33 +0000 (00:21 +0100)]
Make sure the macros work without silent rules

We should not require AM_DEFAULT_VERBOSITY to be present, workaround
that fact

15 years agoMake compiler output with silent-rules prettier
Johan Dahlin [Wed, 30 Dec 2009 22:52:22 +0000 (23:52 +0100)]
Make compiler output with silent-rules prettier

This is only supported with automake 1.11 or newer, older versions
should default to showing nothing for now.

15 years agoAdd -DGLIB_COMPILATION for GLib-2.0.gir.
Halton Huo [Wed, 23 Dec 2009 08:27:40 +0000 (16:27 +0800)]
Add -DGLIB_COMPILATION for GLib-2.0.gir.

Otherwise, suncc reports error when parsing /usr/include/glib-2.0/glib/ghostutils.h,
and stops parsing rest headers.

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

15 years agoAllow stack allocating GIBaseInfo, add stack retrieval variants
Colin Walters [Mon, 7 Dec 2009 23:35:06 +0000 (18:35 -0500)]
Allow stack allocating GIBaseInfo, add stack retrieval variants

We don't want to malloc each GIBaseInfo when they can be used in
function invocation; instead, allow stack allocation.

There were a lot of structure typedefs which were actually just
exactly the same as GIBaseInfo, with the one exception of GITypeInfo.

Instead, just put the single GITypeInfo boolean inside GIBaseInfo
as a bit in a bitfield.

GIBaseInfo is still opaque publicly; GIRealInfo is the new
internal structure.

Using this, add new functions to retrieve arguments and argument types
on the stack.

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

15 years ago[girffi] Clean up API, add g_function_info_prep_invoker
Colin Walters [Mon, 7 Dec 2009 16:54:18 +0000 (11:54 -0500)]
[girffi] Clean up API, add g_function_info_prep_invoker

Rather than having bindings use g_function_info_invoke, which is basically
a toy/demo API, export a convenience utility function which takes the introspection
information and sets up things we need to pass to libffi.

Then invocation can be done directly to libffi by a binding.

As part of this work, remove some (unused by gjs) public functions from the
girffi API, and instead export a function to map to libffi which can work
semi-correctly.

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

15 years agoFix compilation warning in ginvoke.c
Colin Walters [Wed, 16 Dec 2009 23:16:31 +0000 (18:16 -0500)]
Fix compilation warning in ginvoke.c

15 years agoPost release version bump
Johan Dahlin [Wed, 16 Dec 2009 19:30:00 +0000 (17:30 -0200)]
Post release version bump

15 years agoSubstitute deprecated Glib symbol: g_mapped_file_free GOBJECT_INTROSPECTION_0_6_7
Javier Jardón [Thu, 3 Dec 2009 20:35:23 +0000 (21:35 +0100)]
Substitute deprecated Glib symbol: g_mapped_file_free

glib-compat.h file created to use g_mapped_file_unref only if
glib >= 2.22 is available

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

15 years agofix invoke tests
Saleem Abdulrasool [Sun, 13 Dec 2009 19:56:45 +0000 (11:56 -0800)]
fix invoke tests

retval should be a valid pointer

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

15 years agoprotect on null retval
Saleem Abdulrasool [Sun, 13 Dec 2009 19:53:04 +0000 (11:53 -0800)]
protect on null retval

ffi_call does not protect against retval being NULL, resulting in a segfault.

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

15 years agoRevert "GI_TYPE_TAG_VOID != ffi_type_void"
Johan Dahlin [Tue, 15 Dec 2009 13:00:52 +0000 (11:00 -0200)]
Revert "GI_TYPE_TAG_VOID != ffi_type_void"

This reverts commit 28cccba737ec2214da66b0d74059278162cf5fd0.

15 years agoDo not require the precense of INTROSPECTION_GIRS
Johan Dahlin [Mon, 14 Dec 2009 23:44:26 +0000 (21:44 -0200)]
Do not require the precense of INTROSPECTION_GIRS

It's useful to be able to include the makefile without
having introspection enabled.

15 years agoUpdate .gitignore
Johan Dahlin [Mon, 14 Dec 2009 23:43:55 +0000 (21:43 -0200)]
Update .gitignore

15 years agoInstall Makefile.introspection in the right dir
Johan Dahlin [Mon, 14 Dec 2009 23:42:54 +0000 (21:42 -0200)]
Install Makefile.introspection in the right dir

Also, make sure that it is included in the dist

15 years agoMove the functions out of the define
Johan Dahlin [Mon, 14 Dec 2009 23:42:21 +0000 (21:42 -0200)]
Move the functions out of the define

As it breaks when including the makefile when using
an absolute path.

15 years agoAdd a Makefile.introspection
Johan Dahlin [Mon, 14 Dec 2009 19:21:54 +0000 (17:21 -0200)]
Add a Makefile.introspection

This will make it easier for third-party projects to use
introspection by having easy make rules.