~mdw
/
clg
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
124eb32
)
Doing ref. counting before sinking in around method
author
espen
<espen>
Fri, 3 Feb 2006 12:47:00 +0000
(12:47 +0000)
committer
espen
<espen>
Fri, 3 Feb 2006 12:47:00 +0000
(12:47 +0000)
gtk/gtkobject.lisp
patch
|
blob
|
blame
|
history
diff --git
a/gtk/gtkobject.lisp
b/gtk/gtkobject.lisp
index
821fa04
..
31cbe9f
100644
(file)
--- a/
gtk/gtkobject.lisp
+++ b/
gtk/gtkobject.lisp
@@
-20,7
+20,7
@@
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-;; $Id: gtkobject.lisp,v 1.2
7 2005/04/23 16:48:52
espen Exp $
+;; $Id: gtkobject.lisp,v 1.2
8 2006/02/03 12:47:00
espen Exp $
(in-package "GTK")
(in-package "GTK")
@@
-52,13
+52,15
@@
(defmethod initialize-instance ((object %object) &rest initargs &key signal)
(declare (ignore signal))
(call-next-method)
(defmethod initialize-instance ((object %object) &rest initargs &key signal)
(declare (ignore signal))
(call-next-method)
- (reference-foreign (class-of object) (proxy-location object))
(dolist (signal-definition (get-all initargs :signal))
(apply #'signal-connect object signal-definition)))
(defmethod initialize-instance :around ((object %object) &rest initargs)
(declare (ignore initargs))
(call-next-method)
(dolist (signal-definition (get-all initargs :signal))
(apply #'signal-connect object signal-definition)))
(defmethod initialize-instance :around ((object %object) &rest initargs)
(declare (ignore initargs))
(call-next-method)
+ ;; Add a temorary reference which will be removed when the object is
+ ;; sinked
+ (reference-foreign (class-of object) (proxy-location object))
(%object-sink object))
(defbinding %object-sink () nil
(%object-sink object))
(defbinding %object-sink () nil