diff options
Diffstat (limited to 'slirp-android/misc.c')
-rw-r--r-- | slirp-android/misc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/slirp-android/misc.c b/slirp-android/misc.c index fb8ec5f..a6063a9 100644 --- a/slirp-android/misc.c +++ b/slirp-android/misc.c @@ -327,11 +327,14 @@ fork_exec(struct socket *so, const char *ex, int do_pty) /* Ooops, failed, let's tell the user why */ { char buff[256]; + int ret; snprintf(buff, sizeof(buff), "Error: execvp of %s failed: %s\n", argv[0], strerror(errno)); - write(2, buff, strlen(buff)+1); + do { + ret =write(2, buff, strlen(buff)+1); + } while (ret < 0 && errno == EINTR); } close(0); close(1); close(2); /* XXX */ exit(1); |