ref: 340d83d49d659b53e711ab59d6e819be39a0ad16
parent: 7cfe4aef3c85aee813c2d3e712f94a319abba1c3
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Sat Jan 30 14:11:33 EST 2016
games/doom: fix white window issue on exit make kbdproc() and mouseproc() share fd table with the main proc and not explicitely close the file descriptors. so /dev/mouse gets closed *after* /dev/draw/new to avoid the white window refresh issue.
--- a/sys/src/games/doom/i_video.c
+++ b/sys/src/games/doom/i_video.c
@@ -46,13 +46,13 @@
center = addpt(screen->r.min, Pt(Dx(screen->r)/2, Dy(screen->r)/2));
grabout = insetrect(screen->r, Dx(screen->r)/8);
- if((pid = rfork(RFPROC|RFMEM|RFFDG)) == 0){
+ if((pid = rfork(RFPROC|RFMEM)) == 0){
kbdproc();
exits(nil);
}
kbdpid = pid;
- if((pid = rfork(RFPROC|RFMEM|RFFDG)) == 0){
+ if((pid = rfork(RFPROC|RFMEM)) == 0){
mouseproc();
exits(nil);
}
@@ -300,7 +300,6 @@
}
strcpy(buf2, buf);
}
- close(kfd);
}
static void
@@ -356,6 +355,5 @@
break;
}
}
- close(fd);
}