tr(1): Properly handle the -dc case for character classes
I actually did that properly in the set-case but forgot to add the same
logic to the character classes. Now it should work fine.
diff --git a/tr.c b/tr.c
index 29c9445..3aef53e 100644
--- a/tr.c
+++ b/tr.c
@@ -248,8 +248,12 @@
}
}
if (set1check && set1check(r)) {
- if (dflag && !cflag)
- goto read;
+ if (dflag) {
+ if (cflag)
+ goto write;
+ else
+ goto read;
+ }
if (set2check) {
if (set2check == islowerrune)
r = tolowerrune(r);
@@ -258,6 +262,7 @@
} else {
r = set2[set2ranges - 1].end;
}
+ goto write;
}
if (!dflag && cflag) {
if (set2check) {