diff --git a/core/fpdftext/cpdf_textpage.cpp b/core/fpdftext/cpdf_textpage.cpp
index 0a7a39f..d528c69 100644
--- a/core/fpdftext/cpdf_textpage.cpp
+++ b/core/fpdftext/cpdf_textpage.cpp
@@ -1226,20 +1226,17 @@
     return false;
 
   auto iter = curText.rbegin();
-  for (; iter != curText.rend() && *iter == 0x20; iter++) {
+  for (; (iter + 1) != curText.rend() && *iter == 0x20; iter++) {
     // Do nothing
   }
 
-  if (iter != curText.rend()) {
-    if (!IsHyphenCode(*iter))
-      return false;
+  if (!IsHyphenCode(*iter))
+    return false;
+
+  if ((iter + 1) != curText.rend()) {
     iter++;
     if (FXSYS_iswalpha(*iter) && FXSYS_iswalpha(*iter))
       return true;
-  } else {
-    iter--;
-    if (!IsHyphenCode(*iter))
-      return false;
   }
 
   const PAGECHAR_INFO* preInfo;
