git: 9front

Download patch

ref: b352d6c93e2ad644680766eebcf2bff56e475143
parent: 9456806dcffdf95b64ce2ab0c10a5171c95d364f
author: qwx <devnull@localhost>
date: Sun May 20 12:47:41 EDT 2018

camv: fix leak on resize

--- a/sys/src/cmd/camv.c
+++ b/sys/src/cmd/camv.c
@@ -39,8 +39,9 @@
 void
 screeninit(void)
 {
-	bg = allocimage(display, Rect(0, 0, 1, 1), screen->chan, 1, 0xCCCCCCFF);
+	freescreen(scr);
 	scr = allocscreen(screen, bg, 0);
+	freeimage(disp);
 	disp = allocwindow(scr, screen->r, 0, 0xCCCCCCFF);
 	draw(screen, screen->r, bg, nil, ZP);
 	flushimage(display, 1);
@@ -225,6 +226,7 @@
 	
 	if(initdraw(nil, nil, "camv") < 0)
 		sysfatal("initdraw: %r");
+	bg = allocimage(display, Rect(0, 0, 1, 1), screen->chan, 1, 0xCCCCCCFF);
 	screeninit();
 	kc = initkeyboard(nil);
 	if(kc == nil) sysfatal("initkeyboard: %r");
--