diff --git a/src/server/slavefuncs.c b/src/server/slavefuncs.c --- a/src/server/slavefuncs.c +++ b/src/server/slavefuncs.c @@ -316,12 +316,14 @@ int exec_blender(char *input, char *outp fprintf(stderr,"Executing: %s\n", frame_str); ret = execio_open(&testrem, command, cmd); - buf[19] = '\0'; - while(!execio_read(testrem, buf, 20, &readlen)) + if(ret) { - if(readlen > 20) { - fprintf(stderr, "Something is terribly wrong!\n"); - } + fprintf(stderr, "error running blender\n"); + return 1; + } + buf[19] = '\0'; + while(!execio_read(testrem, buf, 19, &readlen)) + { buf[readlen] = '\0'; fprintf(stderr, "read \"%s\"\n", buf); } @@ -818,9 +820,6 @@ int slaveBenchmark(char *datadir, int *b buf[19] = '\0'; while(!execio_read(testrem, buf, 19, &readlen)) { - if(readlen > 20) { - fprintf(stderr, "Something is terribly wrong!\n"); - } buf[readlen] = '\0'; fprintf(stderr, "read \"%s\"\n", buf); }