diff --git a/src/clj/coffi/mem.clj b/src/clj/coffi/mem.clj index 119a8c3..5f284c2 100644 --- a/src/clj/coffi/mem.clj +++ b/src/clj/coffi/mem.clj @@ -389,8 +389,12 @@ (MemoryAccess/setDouble segment (double obj))) (defmethod serialize-into ::pointer - [obj _type segment _scope] - (MemoryAccess/setAddress segment obj)) + [obj type segment scope] + (with-acquired [(segment-scope segment) scope] + (MemoryAccess/setAddress + segment + (cond-> obj + (sequential? type) (serialize* type scope))))) (defn serialize "Serializes an arbitrary type.