gobject-introspection 3.2.9 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Rakefile +2 -2
- data/ext/gobject-introspection/rb-gi-argument.c +14 -1
- data/ext/gobject-introspection/rb-gi-function-info.c +18 -6
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b5e708d02e27a80e2c6f6c93ed0c283011b264547f8523575d8b2038bf08039e
|
4
|
+
data.tar.gz: 1cb3f367205cf4ff8b826f755354c134071740e09211cbb2377f4907714e1cab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c38badd7944d4278121ec7085b0f6bbeb1ded582941c1347babe6f21535ebc67bd7897bda77ad89d31d2df27abf50a18fee497150942d67e5c56f6bbf32513e2
|
7
|
+
data.tar.gz: c917b854af7ebec5cd473dc3b6b3f948c14e591ad41111a0a8d9df431011e5d91bdce2d01d91ec9d17083e790120433eb211ab27b4cbe3390f34bc269dca9625
|
data/Rakefile
CHANGED
@@ -31,7 +31,7 @@ package_task = GNOME2::Rake::PackageTask.new(spec, __dir__) do |package|
|
|
31
31
|
:name => "glib",
|
32
32
|
:download_site => :gnome,
|
33
33
|
:label => "GLib",
|
34
|
-
:version => "2.
|
34
|
+
:version => "2.58.1",
|
35
35
|
:compression_method => "xz",
|
36
36
|
:windows => {
|
37
37
|
:build => false,
|
@@ -46,7 +46,7 @@ package_task = GNOME2::Rake::PackageTask.new(spec, __dir__) do |package|
|
|
46
46
|
:name => "gobject-introspection",
|
47
47
|
:download_site => :gnome,
|
48
48
|
:label => "gobject-introspection",
|
49
|
-
:version => "1.
|
49
|
+
:version => "1.58.0",
|
50
50
|
:compression_method => "xz",
|
51
51
|
:windows => {
|
52
52
|
:configure_args => [
|
@@ -2088,11 +2088,24 @@ rb_gi_out_argument_fin_interface(GIArgument *argument,
|
|
2088
2088
|
case GI_INFO_TYPE_FLAGS:
|
2089
2089
|
break;
|
2090
2090
|
case GI_INFO_TYPE_OBJECT:
|
2091
|
-
|
2091
|
+
switch (transfer) {
|
2092
|
+
case GI_TRANSFER_NOTHING:
|
2093
|
+
break;
|
2094
|
+
case GI_TRANSFER_CONTAINER:
|
2095
|
+
case GI_TRANSFER_EVERYTHING:
|
2096
|
+
{
|
2097
|
+
GObject *object = *((GObject **)argument->v_pointer);
|
2098
|
+
if (object) {
|
2099
|
+
g_object_unref(object);
|
2100
|
+
}
|
2101
|
+
}
|
2102
|
+
break;
|
2103
|
+
default:
|
2092
2104
|
rb_raise(rb_eNotImpError,
|
2093
2105
|
"TODO: free out transfer GIArgument(interface)[%s][%s]",
|
2094
2106
|
g_info_type_to_string(interface_type),
|
2095
2107
|
rb_gi_transfer_to_string(transfer));
|
2108
|
+
break;
|
2096
2109
|
}
|
2097
2110
|
xfree(argument->v_pointer);
|
2098
2111
|
break;
|
@@ -1160,12 +1160,24 @@ in_callback_argument_from_ruby(RBGIArgMetadata *metadata,
|
|
1160
1160
|
} else {
|
1161
1161
|
rb_owner = self;
|
1162
1162
|
}
|
1163
|
-
|
1164
|
-
|
1165
|
-
|
1166
|
-
|
1167
|
-
|
1168
|
-
|
1163
|
+
{
|
1164
|
+
static VALUE mGLibObject = Qnil;
|
1165
|
+
if (NIL_P(mGLibObject)) {
|
1166
|
+
mGLibObject = rb_const_get(mGLib, rb_intern("Object"));
|
1167
|
+
}
|
1168
|
+
if (rb_obj_is_kind_of(rb_owner, mGLibObject)) {
|
1169
|
+
rbgobj_object_add_relative(rb_owner, callback_data->rb_callback);
|
1170
|
+
callback_data->owner = RVAL2GOBJ(rb_owner);
|
1171
|
+
g_object_weak_ref(callback_data->owner,
|
1172
|
+
rb_gi_callback_data_weak_notify,
|
1173
|
+
callback_data);
|
1174
|
+
} else {
|
1175
|
+
/* Class method case. Callback is never GC-ed. (OK?) */
|
1176
|
+
rbgobj_add_relative(rb_owner, callback_data->rb_callback);
|
1177
|
+
callback_data->owner = NULL;
|
1178
|
+
}
|
1179
|
+
closure_argument->v_pointer = callback_data;
|
1180
|
+
}
|
1169
1181
|
}
|
1170
1182
|
|
1171
1183
|
if (destroy_argument) {
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gobject-introspection
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- The Ruby-GNOME2 Project Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-10-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: glib2
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 3.
|
19
|
+
version: 3.3.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 3.
|
26
|
+
version: 3.3.0
|
27
27
|
description: Ruby/GObjectIntrospection provides bindings of GObject Introspection
|
28
28
|
and a loader module that can generate dynamically Ruby bindings of any GObject C
|
29
29
|
libraries
|