diff --git a/src/core/unicode.js b/src/core/unicode.js
index 26328c8de..b84b134f9 100644
--- a/src/core/unicode.js
+++ b/src/core/unicode.js
@@ -51,6 +51,8 @@ function mapSpecialUnicodeValues(code) {
     return 0;
   } else if (code >= 0xF600 && code <= 0xF8FF) {
     return (getSpecialPUASymbols()[code] || code);
+  } else if (code === 0x00AD) { // softhyphen
+    return 0x002D; // hyphen
   }
   return code;
 }
diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore
index 983bc2136..bed1b9c37 100644
--- a/test/pdfs/.gitignore
+++ b/test/pdfs/.gitignore
@@ -62,6 +62,7 @@
 !issue8707.pdf
 !issue8798r.pdf
 !issue8823.pdf
+!issue9084.pdf
 !bad-PageLabels.pdf
 !filled-background.pdf
 !ArabicCIDTrueType.pdf
diff --git a/test/pdfs/issue9084.pdf b/test/pdfs/issue9084.pdf
new file mode 100644
index 000000000..e91f36669
Binary files /dev/null and b/test/pdfs/issue9084.pdf differ
diff --git a/test/test_manifest.json b/test/test_manifest.json
index dfbcabf0f..63abe91e8 100644
--- a/test/test_manifest.json
+++ b/test/test_manifest.json
@@ -711,6 +711,13 @@
        "link": false,
        "type": "eq"
     },
+    {  "id": "issue9084",
+       "file": "pdfs/issue9084.pdf",
+       "md5": "5570ec01cc869d299fec1b2f68926a08",
+       "rounds": 1,
+       "link": false,
+       "type": "eq"
+    },
     {  "id": "issue8707",
        "file": "pdfs/issue8707.pdf",
        "md5": "d3dc670adde9ec9fb82c974027033029",