;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-;; $Id: vectors.lisp,v 1.2 2006-06-08 13:24:25 espen Exp $
+;; $Id: vectors.lisp,v 1.4 2007-06-18 10:13:07 espen Exp $
(in-package "GFFI")
(defun unset-0-vector (location element-type &optional temp-p)
(loop
- with destroy = (destroy-function element-type temp-p)
+ with destroy = (destroy-function element-type :temp temp-p)
with element-size = (size-of element-type)
for offset by element-size
until (memory-clear-p (pointer+ location offset) element-size)
for element by element-size
until (memory-clear-p from-vector element-size element)
finally (return length)))
- (to-vector (setf
- (ref-pointer to offset)
- (allocate-memory (* length element-size)))))
+ (to-vector
+ (setf (ref-pointer to offset)
+ (allocate-memory (* (1+ length) element-size)))))
(loop
repeat length
for element by element-size