unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: David Pirotte <david@altosw.be>
To: Matija Obid <matija.obid@posteo.net>
Cc: guile-user@gnu.org
Subject: Re: G-Golf - Callback segmentation fault
Date: Wed, 28 Aug 2024 21:18:05 -0300	[thread overview]
Message-ID: <20240828211805.68f594a7@tintin> (raw)
In-Reply-To: <87a5gxybgm.fsf@posteo.net>

[-- Attachment #1: Type: text/plain, Size: 2107 bytes --]

Hello Matija,

> There is a version check in "g-callable-info-make-closure" function,
> if I disable it (check patch) all examples works just fine.

Great! But ...

> I'm not quite sure what these functions does, can you take another
> look?

g-callable-info-make-closure just select in between the appropriate GI
make closure function it must use [1], depending on your GI version:

	>= 1.71.0
	use g-callable-info-create-closure

	otherwise
	use g-callable-info-prepare-closure

> My gi version is 1.80.1.

So your patch seems to point to a problem in the upstream definition of
the (most recent) g-callable-info-create-closure, which is the one
everybody who's using GI >= 1.71.0 should use ...

Your patch 'wrongly' force to still use the (deprecated in 1.72.0)
g-callable-info-prepare-closure function.

Note that, on NixOS  and Guix, it is not the call to
g-callable-info-create-closure that segfault, but the call to the
closure that was made calling g-callable-info-create-closure

Fwiw, I just posted an explanation of this problem in the matrix room
#introspection:gnome.org, asking if anyone has an idea ... but i very
much doubt they will answer.

Do you (or anyone else interested ofc) have an idea of why would
g-callable-info-create-closure perfectly create a closure pointer on
debian, and not on guix/nix? Here is the upstream code def [2]

Thanks,
David

[1]	note that this code precedes the fact that g-golf now depends
on GI >= 1.72.0, for some other reason - so technically, i could have
removed g-callable-info-make-closure and always use
g-callable-info-create-closure ... fortunately for guix/nix, till will
find a real fix, i left this 'inoffensive' code in g-golf core ... 

[2] 

g_callable_info_create_closure

	https://salsa.debian.org/gnome-team/gobject-introspection/-/blob/debian/latest/girepository/girffi.c?ref_type=heads#L355


g_callable_info_prepare_closure

	https://salsa.debian.org/gnome-team/gobject-introspection/-/blob/debian/latest/girepository/girffi.c?ref_type=heads#L447
















[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  parent reply	other threads:[~2024-08-29  0:18 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-21 14:50 G-Golf - Callback segmentation fault Matija Obid
2024-08-21 15:19 ` pelzflorian (Florian Pelz)
2024-08-23 23:57   ` David Pirotte
2024-08-24 16:01     ` pelzflorian (Florian Pelz)
2024-08-25  5:09       ` David Pirotte
2024-08-25 13:28         ` pelzflorian (Florian Pelz)
2024-08-26  6:40           ` pelzflorian (Florian Pelz)
2024-08-22  0:21 ` David Pirotte
2024-08-27 20:09   ` Matija Obid
2024-08-28 10:50     ` pelzflorian (Florian Pelz)
2024-08-29  0:18     ` David Pirotte [this message]
2024-08-31 16:35       ` Matija Obid
2024-09-02 15:30         ` pelzflorian (Florian Pelz)
2024-09-02 21:18         ` David Pirotte
2024-09-03  1:01           ` David Pirotte
2024-09-05  4:00             ` David Pirotte
2024-09-05  7:24               ` pelzflorian (Florian Pelz)
2024-09-05  7:42                 ` pelzflorian (Florian Pelz)
2024-09-05 21:23                   ` David Pirotte
2024-09-05 21:44                     ` David Pirotte
2024-09-05 20:48                 ` David Pirotte
2024-09-05 13:37               ` Matija Obid
2024-09-05 22:14                 ` David Pirotte
2024-09-06  6:29                   ` David Pirotte
2024-09-06  9:44                     ` pelzflorian (Florian Pelz)
2024-09-06 18:37                       ` David Pirotte
2024-09-06 22:08                         ` David Pirotte
2024-09-06 23:16                           ` David Pirotte
2024-09-07 14:08                             ` pelzflorian (Florian Pelz)
2024-09-07 11:53                           ` Matija Obid

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240828211805.68f594a7@tintin \
    --to=david@altosw.be \
    --cc=guile-user@gnu.org \
    --cc=matija.obid@posteo.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).