if (glite_wll_perftest_init(hostname, NULL, testname, filename, num_jobs) < 0) {
                fprintf(stderr,"%s: glite_wll_perftest_init failed\n",argv[0]);
+               exit(1);
        }
 
        if(dest) {
                                        fprintf(stderr,"edg_wll_DoLogEventDirect(): %s (%s)\n",et,ed);
                                        exit(1);
                                }
+                               break;
 
                        case DEST_IL:
                                ctx->p_tmp_timeout = ctx->p_log_timeout;
                                        fprintf(stderr,"edg_wll_DoLogEventIl(): %s (%s)\n",et,ed);
                                        exit(1);
                                }
+                               break;
 
                        default:
                                break;
 
                while(jobid = glite_wll_perftest_produceJobId()) {
                        fprintf(stdout, "%s\n", jobid);
-                       free(jobid);
                }
        }
        edg_wll_FreeContext(ctx);