Blob Blame History Raw
--- hunspell-1.2.14/src/hunspell/affixmgr.cxx	2011-01-06 11:48:34.000000000 +0000
+++ hunspell-1.2.15/src/hunspell/affixmgr.cxx	2011-01-26 09:18:19.000000000 +0000
@@ -2467,9 +2527,10 @@
         }
        se = se->getNext();
     }
-  
+
     // now handle the general case
-    unsigned char sp = *((const unsigned char *)(word + len - 1));
+    if (len == 0) return NULL; // FULLSTRIP
+    unsigned char sp= *((const unsigned char *)(word + len - 1));
     SfxEntry * sptr = sStart[sp];
 
     while (sptr) {
@@ -2534,8 +2595,9 @@
         }
         se = se->getNext();
     }
-  
+
     // now handle the general case
+    if (len == 0) return NULL; // FULLSTRIP
     unsigned char sp = *((const unsigned char *)(word + len - 1));
     SfxEntry * sptr = sStart[sp];
 
@@ -2596,8 +2658,9 @@
         }
         se = se->getNext();
     }
-  
+
     // now handle the general case
+    if (len == 0) return NULL; // FULLSTRIP
     unsigned char sp = *((const unsigned char *)(word + len - 1));
     SfxEntry * sptr = sStart[sp];
 
@@ -2702,8 +2765,9 @@
        }
        se = se->getNext();
     }
-  
+
     // now handle the general case
+    if (len == 0) return NULL; // FULLSTRIP
     unsigned char sp = *((const unsigned char *)(word + len - 1));
     SfxEntry * sptr = sStart[sp];