diff options
author | Pavel Machek <pavel@ucw.cz> | 2000-06-08 16:57:41 +0000 |
---|---|---|
committer | Pavel Machek <pavel@ucw.cz> | 2000-06-08 16:57:41 +0000 |
commit | 4bb18dd2daa1e13ab4f9aaff2ddc4875c4776559 (patch) | |
tree | 46677d61b9151ee6d5e2a946f7669abd7d7ecd1d /filter/filter.c | |
parent | 89e7de98e455071c5ff3796765fb6fd6860a63c6 (diff) |
Fix i_same for 'c' instruction.
Diffstat (limited to 'filter/filter.c')
-rw-r--r-- | filter/filter.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/filter/filter.c b/filter/filter.c index a7a17bd4..25711c56 100644 --- a/filter/filter.c +++ b/filter/filter.c @@ -748,7 +748,21 @@ i_same(struct f_inst *f1, struct f_inst *f2) } break; - case 'c': A2_SAME; break; + case 'c': + if (f1->aux & T_SET) { + if (!same_tree(f1->a2.p, f2->a2.p)) + return 0; + break; + } + switch (f1->aux) { + case T_STRING: + if (strcmp(f1->a2.p, f2->a2.p)) + return 0; + break; + default: + A2_SAME; + } + break; case 'C': if (val_compare(* (struct f_val *) f1->a1.p, * (struct f_val *) f2->a1.p)) return 0; |