summaryrefslogtreecommitdiff
path: root/Lib/guile/guile_scm_run.swg
diff options
context:
space:
mode:
authorBrian Caine <brian.d.caine@gmail.com>2016-07-09 21:39:28 -0400
committerOlly Betts <olly@survex.com>2016-12-16 15:15:13 +1300
commit391bb79cbaa914db2dbbe2edec5c2af1d76bed86 (patch)
treeef8f59ca4bcefc4c8497cdce5326e9a0fd1788a8 /Lib/guile/guile_scm_run.swg
parent88b4827d8753657c62ae143a64f8d8c668680d70 (diff)
downloadswig-391bb79cbaa914db2dbbe2edec5c2af1d76bed86.tar.gz
Added support for guile's native pointer type
Diffstat (limited to 'Lib/guile/guile_scm_run.swg')
-rw-r--r--Lib/guile/guile_scm_run.swg3
1 files changed, 3 insertions, 0 deletions
diff --git a/Lib/guile/guile_scm_run.swg b/Lib/guile/guile_scm_run.swg
index 94cf4d101..52407afa3 100644
--- a/Lib/guile/guile_scm_run.swg
+++ b/Lib/guile/guile_scm_run.swg
@@ -176,6 +176,9 @@ SWIG_Guile_ConvertPtr(SCM s, void **result, swig_type_info *type, int flags)
if (SCM_NULLP(smob)) {
*result = NULL;
return SWIG_OK;
+ } else if (SCM_POINTER_P(s)) {
+ *result = SCM_POINTER_VALUE(s);
+ return SWIG_OK;
} else if (SCM_SMOB_PREDICATE(swig_tag, smob) || SCM_SMOB_PREDICATE(swig_collectable_tag, smob)) {
/* we do not accept smobs representing destroyed pointers */
from = (swig_type_info *) SCM_CELL_WORD_2(smob);