From: Dmitry Kalyanov Date: Mon, 16 Mar 2009 23:42:39 +0000 (+0300) Subject: check at get-stable-pointer-value X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=cff61d816a0776142d2c3c3b6fbc2841bafe06c9;p=cl-gtk2.git check at get-stable-pointer-value --- diff --git a/glib/gobject.foreign.lisp b/glib/gobject.foreign.lisp index ce6d42f..0738cdc 100644 --- a/glib/gobject.foreign.lisp +++ b/glib/gobject.foreign.lisp @@ -39,7 +39,8 @@ (setf (aref *registered-stable-pointers* (pointer-address stable-pointer)) nil)) (defun get-stable-pointer-value (stable-pointer) - (aref *registered-stable-pointers* (pointer-address stable-pointer))) + (when (<= 0 (pointer-address stable-pointer) (length *registered-stable-pointers*)) + (aref *registered-stable-pointers* (pointer-address stable-pointer)))) (defun find-fresh-id () (or (position nil *registered-stable-pointers*)