From 7e35c28bc63073afa6800b4261a7e97d92163eb8 Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Thu, 11 Dec 2014 15:28:13 -0800 Subject: [PATCH] forestdb.lib: fdb_iterator_get() actually calls create_doc and mallocs the memory for you. We use fdb_doc_free to free() it in with-doc later. --- extra/forestdb/lib/lib.factor | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/extra/forestdb/lib/lib.factor b/extra/forestdb/lib/lib.factor index 8bc41c3b0d..a8bd595d99 100644 --- a/extra/forestdb/lib/lib.factor +++ b/extra/forestdb/lib/lib.factor @@ -293,9 +293,10 @@ T{ doc } cleave ; : fdb-iterator-get ( iterator -- doc/f ) - fdb_doc malloc-struct fdb_doc + f void* [ fdb_iterator_get check-iterate-result ] keep swap - [ void* deref fdb_doc memory>struct ] [ void* deref free f ] if ; + [ void* deref fdb_doc memory>struct ] + [ drop f ] if ; : fdb-iterator-seek ( iterator key seek-opt -- ) [ dup length ] dip fdb_iterator_seek fdb-check-error ;