summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-01-13 21:34:27 +0100
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-01-13 21:34:27 +0100
commit06c88f053827723d38fe58831318afc6d529f83e (patch)
treed0d2ad136ade5b1f96cab8891649e57b78ee965d /main.c
parent18e11ba9a8ccc8526fe051c3c3b57453455c1b39 (diff)
fixed unknown response bug when running 2nd instance without cmdline args
Diffstat (limited to 'main.c')
-rw-r--r--main.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/main.c b/main.c
index 95dbaa71..6e1ba422 100644
--- a/main.c
+++ b/main.c
@@ -262,7 +262,7 @@ server_update (void) {
}
else if (s2 != -1) {
char str[2048];
- char sendback[1024];
+ char sendback[1024] = "";
int size;
if ((size = recv (s2, str, 2048, 0)) >= 0) {
if (size == 1 && str[0] == 0) {
@@ -489,8 +489,9 @@ main (int argc, char *argv[]) {
perror ("send");
exit (-1);
}
- char out[2048];
- if (recv(s, out, sizeof (out), 0) == -1) {
+ char out[2048] = "";
+ ssize_t sz = recv(s, out, sizeof (out), 0);
+ if (sz == -1) {
fprintf (stderr, "failed to pass args to remote!\n");
exit (-1);
}
@@ -506,8 +507,8 @@ main (int argc, char *argv[]) {
const char *prn = &out[sizeof (err)-1];
fwrite (prn, 1, strlen (prn), stderr);
}
- else if (out[0]) {
- fprintf (stderr, "got unkown response:\n%s\n", out);
+ else if (sz > 0 && out[0]) {
+ fprintf (stderr, "got unknown response:\nlength=%d\n%s\n", sz, out);
}
}
close (s);