Use size_t in `union ctlseqs_value`.
This commit is contained in:
parent
8ef507792b
commit
c4b9ba3aef
|
@ -279,7 +279,7 @@ sixdraw_prepare(struct sixdraw_ctx *ctx)
|
||||||
bool has_sixel = false;
|
bool has_sixel = false;
|
||||||
bool has_dec_locator = false;
|
bool has_dec_locator = false;
|
||||||
union ctlseqs_value *result = ctx->result;
|
union ctlseqs_value *result = ctx->result;
|
||||||
for (size_t i = 1; i <= result[0].num; ++i) {
|
for (size_t i = 1; i <= result[0].len; ++i) {
|
||||||
if (result[i].num == 4) {
|
if (result[i].num == 4) {
|
||||||
has_sixel = true;
|
has_sixel = true;
|
||||||
} else if (result[i].num == 29) {
|
} else if (result[i].num == 29) {
|
||||||
|
|
|
@ -74,7 +74,7 @@
|
||||||
break; \
|
break; \
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
buf_val[0].num = cnt; \
|
buf_val[0].len = cnt; \
|
||||||
buf_val[1].str = seq; \
|
buf_val[1].str = seq; \
|
||||||
*buf += 2; \
|
*buf += 2; \
|
||||||
return seq + cnt
|
return seq + cnt
|
||||||
|
@ -250,7 +250,8 @@ ctlseqs_state_transition(enum ctlseqs_state state, char ch)
|
||||||
CTLSEQS_HOT static char const *
|
CTLSEQS_HOT static char const *
|
||||||
ctlseqs_fetch_value(char const *seq, int type, union ctlseqs_value **buf)
|
ctlseqs_fetch_value(char const *seq, int type, union ctlseqs_value **buf)
|
||||||
{
|
{
|
||||||
unsigned long cnt, num;
|
size_t cnt;
|
||||||
|
unsigned long num;
|
||||||
char *endptr = NULL;
|
char *endptr = NULL;
|
||||||
union ctlseqs_value *buf_val = *buf;
|
union ctlseqs_value *buf_val = *buf;
|
||||||
switch (type) {
|
switch (type) {
|
||||||
|
@ -269,7 +270,7 @@ ctlseqs_fetch_value(char const *seq, int type, union ctlseqs_value **buf)
|
||||||
}
|
}
|
||||||
seq = endptr + 1;
|
seq = endptr + 1;
|
||||||
}
|
}
|
||||||
buf_val[0].num = cnt;
|
buf_val[0].len = cnt;
|
||||||
*buf += cnt + 1;
|
*buf += cnt + 1;
|
||||||
return endptr;
|
return endptr;
|
||||||
case ctlseqs_ph_str:
|
case ctlseqs_ph_str:
|
||||||
|
@ -365,7 +366,7 @@ ctlseqs_do_match(struct ctlseqs_matcher const *matcher, struct ctlseqs_match_arg
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (retval < 0 || args->save_seq) {
|
if (retval < 0 || args->save_seq) {
|
||||||
args->result[0].num = idx;
|
args->result[0].len = idx;
|
||||||
args->result[1].str = seq;
|
args->result[1].str = seq;
|
||||||
}
|
}
|
||||||
args->result_idx = idx;
|
args->result_idx = idx;
|
||||||
|
|
|
@ -388,6 +388,7 @@ struct ctlseqs_reader_options {
|
||||||
|
|
||||||
union ctlseqs_value {
|
union ctlseqs_value {
|
||||||
char const *str;
|
char const *str;
|
||||||
|
size_t len;
|
||||||
unsigned long num;
|
unsigned long num;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -87,7 +87,7 @@ parse_int(char const *str, int *dest)
|
||||||
static void
|
static void
|
||||||
print_generic_seq(char const *header, union ctlseqs_value *result, bool newline)
|
print_generic_seq(char const *header, union ctlseqs_value *result, bool newline)
|
||||||
{
|
{
|
||||||
size_t length = result[0].num;
|
size_t length = result[0].len;
|
||||||
char const *seq = result[1].str;
|
char const *seq = result[1].str;
|
||||||
printf("%s %zu", header, length);
|
printf("%s %zu", header, length);
|
||||||
for (size_t idx = 0; idx < length; ++idx) {
|
for (size_t idx = 0; idx < length; ++idx) {
|
||||||
|
@ -124,10 +124,10 @@ print_matching_seq(struct tcsgrep_sequence *seq, union ctlseqs_value *result, bo
|
||||||
printf(" %lu", result[idx].num);
|
printf(" %lu", result[idx].num);
|
||||||
break;
|
break;
|
||||||
case 0x10: // CTLSEQS_PH_STR
|
case 0x10: // CTLSEQS_PH_STR
|
||||||
printf(" %.*s", (int)result[idx].num, result[idx + 1].str);
|
printf(" %.*s", (int)result[idx].len, result[idx + 1].str);
|
||||||
break;
|
break;
|
||||||
case 0x0f: // CTLSEQS_PH_NUMS
|
case 0x0f: // CTLSEQS_PH_NUMS
|
||||||
for (size_t i = 1; i <= result[idx].num; ++i) {
|
for (size_t i = 1; i <= result[idx].len; ++i) {
|
||||||
printf(" %lu", result[idx + i].num);
|
printf(" %lu", result[idx + i].num);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -421,7 +421,7 @@ main(int argc, char **argv)
|
||||||
case CTLSEQS_NOMEM:
|
case CTLSEQS_NOMEM:
|
||||||
print_generic_seq("NOMEM", result, true);
|
print_generic_seq("NOMEM", result, true);
|
||||||
if (ctx.purge_long_seqs) {
|
if (ctx.purge_long_seqs) {
|
||||||
ctlseqs_purge(reader, result[0].num);
|
ctlseqs_purge(reader, result[0].len);
|
||||||
break;
|
break;
|
||||||
} else {
|
} else {
|
||||||
status = 1;
|
status = 1;
|
||||||
|
|
Loading…
Reference in New Issue