}
/* release mutex (XXX) */
+ free (g->msg_in);
+ free (g->msg_out);
free (g->last_error);
free (g);
}
/* Parent (library). */
g->pid = r;
+ free (kernel);
+ kernel = NULL;
+ free (initrd);
+ initrd = NULL;
+
/* Fork the recovery process off which will kill qemu if the parent
* process fails to do so (eg. if the parent segfaults).
*/
xset2 = ml->xset;
r = select (ml->max_fd+1, &rset2, &wset2, &xset2, NULL);
if (r == -1) {
+ if (errno == EINTR || errno == EAGAIN)
+ continue;
perrorf (g, "select");
ml->is_running = 0;
return -1;