char *ofn = NULL;
char *buf;
char *e;
- int c, i;
+ int c, i, append;
size_t n;
uint32_t cur_len;
unsigned long maxlen = TRX_MAX_LEN;
in = NULL;
i = 0;
- while ((c = getopt(argc, argv, "-:o:m:a:b:f:")) != -1) {
+ while ((c = getopt(argc, argv, "-:o:m:a:b:f:A:")) != -1) {
switch (c) {
+ case 'A':
+ append = 1;
+ /* fall through */
case 'f':
case 1:
- p->offsets[i++] = STORE32_LE(cur_len);
+ if (!append)
+ p->offsets[i++] = STORE32_LE(cur_len);
if (!(in = fopen(optarg, "r"))) {
fprintf(stderr, "can not open \"%s\" for reading\n", optarg);
n += ROUND - (n & (ROUND-1));
}
cur_len += n;
+ append = 0;
break;
case 'o':