summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2009-05-02 12:51:29 +0000
committeralecpl <alec@alec.pl>2009-05-02 12:51:29 +0000
commit4e65a3c145006348af29d913463fd683b72fe5c0 (patch)
tree59e398d8915af022680ce3ed0a6b441fc8bb3b92
parent87b18e92f093dd33de79d389eba05e5871eeec21 (diff)
- limit pspell suggestions for each word
-rw-r--r--program/steps/mail/spell_pspell.inc6
1 files changed, 6 insertions, 0 deletions
diff --git a/program/steps/mail/spell_pspell.inc b/program/steps/mail/spell_pspell.inc
index 102ef5a14..0722b5fa0 100644
--- a/program/steps/mail/spell_pspell.inc
+++ b/program/steps/mail/spell_pspell.inc
@@ -30,6 +30,9 @@ if (!extension_loaded('pspell')) {
exit;
}
+// max. number of suggestions for one word
+define('MAX_SUGGESTIONS', 10);
+
// read input
$data = file_get_contents('php://input');
@@ -55,6 +58,9 @@ foreach ($words as $w) {
$len = rc_strlen($word);
if ($word && $plink && !pspell_check($plink, $word)) {
$suggestions = pspell_suggest($plink, $word);
+ if (sizeof($suggestions)>10)
+ $suggestions = array_slice($suggestions, 0, MAX_SUGGESTIONS);
+
$out .= '<c o="'.$pos.'" l="'.$len.'">';
$out .= implode("\t", $suggestions);
$out .= '</c>';