diff options
author | Hugo Hörnquist <hugo@hornquist.se> | 2019-02-25 22:59:53 +0100 |
---|---|---|
committer | Hugo Hörnquist <hugo@hornquist.se> | 2019-02-25 22:59:53 +0100 |
commit | 6355700d4101a6e515311c96bf8e25bb1bb51d92 (patch) | |
tree | 01b362d60f6fa58d55a0bd1e76e2c3194d2b5b1e /guile_type_helpers.c | |
parent | Reenable guile stuff. (diff) | |
download | calp-6355700d4101a6e515311c96bf8e25bb1bb51d92.tar.gz calp-6355700d4101a6e515311c96bf8e25bb1bb51d92.tar.xz |
Add scm field to strbuf.
Diffstat (limited to 'guile_type_helpers.c')
-rw-r--r-- | guile_type_helpers.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/guile_type_helpers.c b/guile_type_helpers.c index 3f76c2d4..485827a0 100644 --- a/guile_type_helpers.c +++ b/guile_type_helpers.c @@ -2,8 +2,13 @@ #include "macro.h" -SCM scm_from_strbuf(strbuf* s) - { return scm_from_utf8_stringn (s->mem, s->len - 1); } +SCM scm_from_strbuf(strbuf* s) { + if (s->scm == NULL) { + s->scm = scm_from_utf8_stringn (s->mem, s->len - 1); + } + + return s->scm; +} SCM scm_from_vector(VECT(vcomponent)* vect, SCM element_type) { SCM l = SCM_EOL; |