gobject-introspection 4.0.4 → 4.0.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9feb4ba56486befb7695ab16f5c3e8cd0b09894f9117a13ed6c43e14b2922fff
4
- data.tar.gz: ec9ab4a57024a77919929e50d99221f36d3345dd61a314127afdd5674b92393f
3
+ metadata.gz: 38e9d956b4a2b12d6b7f18e524907f137ea691ed0ae4c627b5a74882754e9e64
4
+ data.tar.gz: 4252e224a2f62af1230489d73d66a1ecaba5ee4cb9de47cda8a33449da0b6b2d
5
5
  SHA512:
6
- metadata.gz: 97fb5b2b15556a2adc4f1f9a9fb214edcb9b2f45b9304c4dfea2965792b5cace76ec3643b64f1f15bbfd7fbeeb6f978fa034bc30109290ef4566559d1a4c197d
7
- data.tar.gz: 155aeec561392d4a5a23c5a74ebf298d3b3052d541608b0cdc6d30d274110a624f9a208d5ad88fe2e41be58212652fe1baa43f09c4c8ae9cf83ba8702dc0a2c1
6
+ metadata.gz: 01de3b7cfbe851ee07426b2f65d664bb93e2ae092181c5fc88cf9d8f09885ea52e0c5f5b47b2b0e8c4ab6e48b973c6a14661fcd48ed3d114ef343c8f4474f59e
7
+ data.tar.gz: d359bbcfc24ccd0b4886dedd2b38bcb5633779c5ef5a79303729bdcfc9418da893a06472a12de5ad0e020e0df607eb5959023d127a407660885c892873f0f008
@@ -419,8 +419,23 @@ static void
419
419
  rb_gi_arguments_metadata_free(gpointer data)
420
420
  {
421
421
  RBGIArgMetadata *metadata = data;
422
- if (metadata->scope_type == GI_SCOPE_TYPE_ASYNC ||
423
- metadata->scope_type == GI_SCOPE_TYPE_NOTIFIED) {
422
+ if (metadata->scope_type == GI_SCOPE_TYPE_ASYNC) {
423
+ /* We can't free async scope argument's metadata immediately
424
+ * because async scope argument is called later and it uses its
425
+ * metadata. Its metadata is freed when async scope argument is called.
426
+ *
427
+ * Exception: We can free GDestroyNotify's metadata
428
+ * immediately because GDestroyNotify is only used in
429
+ * Ruby/GObjectIntrospection and Ruby/GObjectIntorspection
430
+ * doesn't use GDestroyNotify's metadata. */
431
+ if (!metadata->destroy_p) {
432
+ return;
433
+ }
434
+ }
435
+ /* We can't free notified scope argument's metadata immediately
436
+ * because notified scope argument is called later and it uses its
437
+ * metadata. Its metadata is freed when its GDestroyNotify is called. */
438
+ if (metadata->scope_type == GI_SCOPE_TYPE_NOTIFIED) {
424
439
  return;
425
440
  }
426
441
  rb_gi_arg_metadata_free(metadata);
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: 4.0.4
4
+ version: 4.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Ruby-GNOME Project Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-09 00:00:00.000000000 Z
11
+ date: 2022-12-12 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: 4.0.4
19
+ version: 4.0.5
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: 4.0.4
26
+ version: 4.0.5
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