@@ -796,8 +796,9 @@ SplitToVariants( IspellDict * Conf, SPNode *snode, SplitVar * orig, char *word,
796
796
int level = (snode ) ?minpos :startpos ;/* recursive minpos==level*/
797
797
int lenaff ;
798
798
CMPDAffix * caff ;
799
- char notprobed [ wordlen ] ;
799
+ char * notprobed ;
800
800
801
+ notprobed = (char * )palloc (wordlen );
801
802
memset (notprobed ,1 ,wordlen );
802
803
var = CopyVar (orig ,1 );
803
804
@@ -869,6 +870,7 @@ SplitToVariants( IspellDict * Conf, SPNode *snode, SplitVar * orig, char *word,
869
870
/* well, it was last word */
870
871
var -> stem [var -> nstem ]= strnduplicate (word + startpos ,wordlen - startpos );
871
872
var -> nstem ++ ;
873
+ pfree (notprobed );
872
874
return var ;
873
875
}else {
874
876
/* then we will search more big word at the same point */
@@ -892,6 +894,7 @@ SplitToVariants( IspellDict * Conf, SPNode *snode, SplitVar * orig, char *word,
892
894
893
895
var -> stem [var -> nstem ]= strnduplicate (word + startpos ,wordlen - startpos );
894
896
var -> nstem ++ ;
897
+ pfree (notprobed );
895
898
return var ;
896
899
}
897
900