Hi
Some procedures in guile-gnome take the ownership of the argument
pointer. For example, pango_attr_list_insert in Pango. I had to modify
g-wrap sources to allow WCT arguments to be declared callee-owned. The
modified version of procedure make-typespec in g-wrap/c-types.scm is here:
---cut-here---
(define (handle-typespec-options options)
(if (and (not (memq 'caller-owned options))
(not (memq 'callee-owned options)))
(cons 'caller-owned options)
options))
(define-method (make-typespec (type <gw-wct>) (options <list>))
(next-method type (if (gw-wcts-nullable?)
(if (memq 'non-null options)
(handle-typespec-options (delq 'non-null
options))
(if (memq 'null-ok options)
(handle-typespec-options options)
(cons 'null-ok
(handle-typespec-options options))))
(handle-typespec-options options))))
---cut-here---
Do you want to make this change into the library?
- Tommi Höynälänmaa
_______________________________________________
g-wrap-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/g-wrap-dev