@@ -58,24 +58,23 @@ BINOPS
58
58
59
59
static jv type_error (jv bad ,const char * msg ) {
60
60
char errbuf [15 ];
61
- jv err = jv_invalid_with_msg ( jv_string_fmt ( "%s (%s) %s" ,
62
- jv_kind_name ( jv_get_kind ( bad )) ,
63
- jv_dump_string_trunc (jv_copy ( bad ) ,errbuf ,sizeof (errbuf )),
61
+ const char * badkind = jv_kind_name ( jv_get_kind ( bad ));
62
+ jv err = jv_invalid_with_msg ( jv_string_fmt ( "%s (%s) %s" , badkind ,
63
+ jv_dump_string_trunc (bad ,errbuf ,sizeof (errbuf )),
64
64
msg ));
65
- jv_free (bad );
66
65
return err ;
67
66
}
68
67
69
68
static jv type_error2 (jv bad1 ,jv bad2 ,const char * msg ) {
70
69
char errbuf1 [15 ],errbuf2 [15 ];
70
+ const char * badkind1 = jv_kind_name (jv_get_kind (bad1 ));
71
+ const char * badkind2 = jv_kind_name (jv_get_kind (bad2 ));
71
72
jv err = jv_invalid_with_msg (jv_string_fmt ("%s (%s) and %s (%s) %s" ,
72
- jv_kind_name ( jv_get_kind ( bad1 )) ,
73
- jv_dump_string_trunc (jv_copy ( bad1 ) ,errbuf1 ,sizeof (errbuf1 )),
74
- jv_kind_name ( jv_get_kind ( bad2 )) ,
75
- jv_dump_string_trunc (jv_copy ( bad2 ) ,errbuf2 ,sizeof (errbuf2 )),
73
+ badkind1 ,
74
+ jv_dump_string_trunc (bad1 ,errbuf1 ,sizeof (errbuf1 )),
75
+ badkind2 ,
76
+ jv_dump_string_trunc (bad2 ,errbuf2 ,sizeof (errbuf2 )),
76
77
msg ));
77
- jv_free (bad1 );
78
- jv_free (bad2 );
79
78
return err ;
80
79
}
81
80
@@ -283,7 +282,7 @@ static jv f_endswith(jq_state *jq, jv a, jv b) {
283
282
const char * bstr = jv_string_value (b );
284
283
size_t alen = jv_string_length_bytes (jv_copy (a ));
285
284
size_t blen = jv_string_length_bytes (jv_copy (b ));
286
- jv ret ;;
285
+ jv ret ;
287
286
288
287
if (alen < blen ||
289
288
memcmp (astr + (alen - blen ),bstr ,blen )!= 0 )