ref: 724a4b7e45bceec7707f3acca5130bcbd13fa9b5
parent: f8407a195dd97a7593faace5623f72d15c11fcb4
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);
}
--
⑨