X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=src%2Fstrings.lisp;h=ebdffebadf4893287c870b97cd5879ecf6462993;hb=70961aaf321b11e18884c7815d679e2b560996af;hp=e54a94095c8aa0d284f93cb509e03c48c22aad2d;hpb=44a2c6231b0a658e28705d5834549db9e0f1159f;p=uffi.git diff --git a/src/strings.lisp b/src/strings.lisp index e54a940..ebdffeb 100644 --- a/src/strings.lisp +++ b/src/strings.lisp @@ -9,11 +9,7 @@ ;;;; ;;;; $Id$ ;;;; -;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg -;;;; -;;;; UFFI users are granted the rights to distribute and use this software -;;;; as governed by the terms of the Lisp Lesser GNU Public License -;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL. +;;;; This file, part of UFFI, is Copyright (c) 2002-2005 by Kevin M. Rosenberg ;;;; ************************************************************************* (in-package #:uffi) @@ -288,6 +284,11 @@ that LW/CMU automatically converts strings from c-calls." (free-foreign-object ,foreign-string) ,result))) +(defmacro with-foreign-strings (bindings &body body) + `(with-foreign-string ,(car bindings) + ,@(if (cdr bindings) + `((with-foreign-strings ,(cdr bindings) ,@body)) + body))) ;; Modified from CMUCL's source to handle non-null terminated strings #+cmu