result:
ok(ret == 0, "Metadata string is valid");
- if (ret && metadata_fd > 0 && parser_output_fd > 0) {
+ if (ret && metadata_fd >= 0 && parser_output_fd >= 0) {
char *line;
size_t len = METADATA_LINE_SIZE;
FILE *metadata_fp = NULL, *parser_output_fp = NULL;
perror("fdopen on metadata_fd");
goto close_fp;
}
+ metadata_fd = -1;
parser_output_fp = fdopen(parser_output_fd, "r");
if (!parser_output_fp) {
perror("fdopen on parser_output_fd");
goto close_fp;
}
+ parser_output_fd = -1;
line = malloc(len);
if (!line) {
free(line);
close_fp:
- fclose(metadata_fp);
- fclose(parser_output_fp);
+ if (metadata_fp) {
+ if (fclose(metadata_fp)) {
+ diag("fclose failure");
+ }
+ }
+ if (parser_output_fp) {
+ if (fclose(parser_output_fp)) {
+ diag("fclose failure");
+ }
+ }
}
- close(parser_output_fd);
- close(metadata_fd);
+ if (parser_output_fd >= 0) {
+ if (close(parser_output_fd)) {
+ diag("close error");
+ }
+ }
+ if (metadata_fd >= 0) {
+ if (close(metadata_fd)) {
+ diag("close error");
+ }
+ }
}
void validate_trace(char *parser_path, char *trace_path)
result:
ok(ret == 0, "Babeltrace could read the resulting trace");
- if (ret && babeltrace_output_fd > 0) {
+ if (ret && babeltrace_output_fd >= 0) {
char *line;
size_t len = METADATA_LINE_SIZE;
FILE *babeltrace_output_fp = NULL;
perror("fdopen on babeltrace_output_fd");
goto close_fp;
}
+ babeltrace_output_fd = -1;
line = malloc(len);
+ if (!line) {
+ diag("malloc error");
+ }
rewind(babeltrace_output_fp);
while (getline(&line, &len, babeltrace_output_fp) > 0) {
diag("%s", line);
free(line);
close_fp:
- fclose(babeltrace_output_fp);
+ if (babeltrace_output_fp) {
+ if (fclose(babeltrace_output_fp)) {
+ diag("fclose error");
+ }
+ }
}
- close(babeltrace_output_fd);
+ if (babeltrace_output_fd >= 0) {
+ if (close(babeltrace_output_fd)) {
+ diag("close error");
+ }
+ }
}
void append_simple_event(struct bt_ctf_stream_class *stream_class,