summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/charset/aliases.c4
-rw-r--r--test/aliases.c8
2 files changed, 12 insertions, 0 deletions
diff --git a/src/charset/aliases.c b/src/charset/aliases.c
index 5c173d0..81962eb 100644
--- a/src/charset/aliases.c
+++ b/src/charset/aliases.c
@@ -62,6 +62,10 @@ static int parserutils_charset_alias_match(const void *a, const void *b)
s_alias++;
}
+ while ((key_left > 0) && IS_PUNCT_OR_SPACE(*s_key)) {
+ key_left--; s_key++;
+ }
+
return key_left - alias_left;
}
diff --git a/test/aliases.c b/test/aliases.c
index 9a9f962..819e4b5 100644
--- a/test/aliases.c
+++ b/test/aliases.c
@@ -28,6 +28,14 @@ int main (int argc, char **argv)
return 1;
}
+ c = parserutils_charset_alias_canonicalise("csinvariant\"", 12);
+ if (c) {
+ printf("%s %d\n", c->name, c->mib_enum);
+ } else {
+ printf("FAIL - failed finding encoding 'csinvariant'\n");
+ return 1;
+ }
+
c = parserutils_charset_alias_canonicalise("nats-sefi-add", 13);
if (c) {
printf("%s %d\n", c->name, c->mib_enum);