Invalidate broker on object destruction.
authorGuo Rui <firemeteor@Adam.(none)>
Mon, 27 Jul 2009 17:13:01 +0000 (28 01:13 +0800)
committerGuo Rui <firemeteor@Adam.(none)>
Mon, 27 Jul 2009 17:13:01 +0000 (28 01:13 +0800)
src/acls.c
src/display.c
src/window.c

index d764023..a14552f 100644 (file)
@@ -389,6 +389,9 @@ struct acluser **up;
 #ifdef COPY_PASTE
   UserFreeCopyBuffer(u);
 #endif
+#ifdef SCRIPT
+  broker_inv_obj(u);
+#endif
   free((char *)u);
   if (!users)
     {
index b00b2a9..cf30443 100644 (file)
@@ -411,6 +411,9 @@ FreeDisplay()
     if (p->w_zdisplay == display)
       zmodem_abort(p, 0);
 #endif
+#ifdef SCRIPT
+  broker_inv_obj(display);
+#endif
 #ifdef MULTI
   free((char *)display);
 #endif
@@ -550,6 +553,9 @@ struct canvas *cv;
       free(vp);
     }
   evdeq(&cv->c_captev);
+#ifdef SCRIPT
+  broker_inv_obj(cv);
+#endif
   free(cv);
 }
 
@@ -4713,6 +4719,9 @@ struct layout *lay;
 
   if (lay->lay_title)
     free(lay->lay_title);
+#ifdef SCRIPT
+  broker_inv_obj(lay);
+#endif
   free(lay);
 
   if (layouts)
index fa4500f..37a03fe 100644 (file)
@@ -1034,6 +1034,10 @@ struct win *wp;
 #ifdef COPY_PASTE
   FreePaster(&wp->w_paster);
 #endif
+
+#ifdef SCRIPT
+  broker_inv_obj(wp);
+#endif
   free((char *)wp);
 }