summaryrefslogtreecommitdiffstats
path: root/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main.c b/src/main.c
index fabc612..ddae024 100644
--- a/src/main.c
+++ b/src/main.c
@@ -7,6 +7,7 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
+#include <rin/diagnostic.h>
#include "io.h"
#include "defs.h"
@@ -24,24 +25,26 @@ int main(int argc, char **argv)
{
int ret = 0;
- try_s((ret = parseargs(argc, argv, &settings)), out);
+ rin_diag_init();
+ try_s((ret = parseargs(argc, argv, &settings)), early_out);
if (settings.opmode == mode_generate) {
file_in.name = randfile;
file_in.out = -1;
file_in.n = settings.to;
- file_out.n = settings.to;
} else {
file_in.name = settings.filein;
}
file_out.name = settings.fileout ? settings.fileout : settings.filein;
- try_s(( ret = stream_open(&file_in, &settings)) ||
- (ret = stream_open(&file_out, &settings)), out);
+ try_s((ret = stream_open(&file_in, &settings)), out);
+ file_out.n = file_in.n;
+ try_s((ret = stream_open(&file_out, &settings)), out);
out:
stream_close(&file_in);
stream_close(&file_out);
+early_out:
return ret;
}