summaryrefslogtreecommitdiff
path: root/inc
diff options
context:
space:
mode:
authorMichael Hamann <michael@content-space.de>2013-10-19 16:09:15 +0200
committerMichael Hamann <michael@content-space.de>2013-10-19 16:43:33 +0200
commita8dba4523d2ecd09dd69a68a36673eaf5c009c57 (patch)
treeac28b0383ea219328d937221fd48edf9affd8f4e /inc
parent20eb92c22e9f506cf1e4ba8753093b89769513e4 (diff)
downloadrpg-a8dba4523d2ecd09dd69a68a36673eaf5c009c57.tar.gz
rpg-a8dba4523d2ecd09dd69a68a36673eaf5c009c57.tar.bz2
Fix FS#2854: Treat numerically different keys as different
Diffstat (limited to 'inc')
-rw-r--r--inc/indexer.php22
1 files changed, 11 insertions, 11 deletions
diff --git a/inc/indexer.php b/inc/indexer.php
index 8f0ba7ec6..378abb360 100644
--- a/inc/indexer.php
+++ b/inc/indexer.php
@@ -10,7 +10,7 @@
if(!defined('DOKU_INC')) die('meh.');
// Version tag used to force rebuild on upgrade
-define('INDEXER_VERSION', 6);
+define('INDEXER_VERSION', 7);
// set the minimum token length to use in the index (note, this doesn't apply to numeric tokens)
if (!defined('IDX_MINWORDLENGTH')) define('IDX_MINWORDLENGTH',2);
@@ -215,7 +215,7 @@ class Doku_Indexer {
foreach (array_keys($words) as $wlen) {
$word_idx = $this->getIndex('w', $wlen);
foreach ($words[$wlen] as $word => $freq) {
- $wid = array_search($word, $word_idx);
+ $wid = array_search($word, $word_idx, true);
if ($wid === false) {
$wid = count($word_idx);
$word_idx[] = $word;
@@ -296,7 +296,7 @@ class Doku_Indexer {
foreach ($values as $val) {
$val = (string)$val;
if ($val !== "") {
- $id = array_search($val, $metawords);
+ $id = array_search($val, $metawords, true);
if ($id === false) {
$id = count($metawords);
$metawords[$id] = $val;
@@ -352,13 +352,13 @@ class Doku_Indexer {
$pages = $this->getPages();
- $id = array_search($oldpage, $pages);
+ $id = array_search($oldpage, $pages, true);
if ($id === false) {
$this->unlock();
return 'page is not in index';
}
- $new_id = array_search($newpage, $pages);
+ $new_id = array_search($newpage, $pages, true);
if ($new_id !== false) {
// make sure the page is not in the index anymore
if ($this->deletePageNoLock($newpage) !== true) {
@@ -397,9 +397,9 @@ class Doku_Indexer {
// change the relation references index
$metavalues = $this->getIndex($key, '_w');
- $oldid = array_search($oldvalue, $metavalues);
+ $oldid = array_search($oldvalue, $metavalues, true);
if ($oldid !== false) {
- $newid = array_search($newvalue, $metavalues);
+ $newid = array_search($newvalue, $metavalues, true);
if ($newid !== false) {
// free memory
unset ($metavalues);
@@ -600,7 +600,7 @@ class Doku_Indexer {
foreach ($wordlist as $i => $word) {
if ((!is_numeric($word) && strlen($word) < IDX_MINWORDLENGTH)
- || array_search($word, $stopwords) !== false)
+ || array_search($word, $stopwords, true) !== false)
unset($wordlist[$i]);
}
return array_values($wordlist);
@@ -771,7 +771,7 @@ class Doku_Indexer {
foreach(array_keys(preg_grep('/'.$re.'/', $words)) as $i)
$value_ids[$i][] = $val;
} else {
- if (($i = array_search($val, $words)) !== false)
+ if (($i = array_search($val, $words, true)) !== false)
$value_ids[$i][] = $val;
}
}
@@ -874,7 +874,7 @@ class Doku_Indexer {
// handle exact search
if (isset($tokenlength[$ixlen])) {
foreach ($tokenlength[$ixlen] as $xword) {
- $wid = array_search($xword, $word_idx);
+ $wid = array_search($xword, $word_idx, true);
if ($wid !== false) {
$wids[$ixlen][] = $wid;
foreach ($tokens[$xword] as $w)
@@ -1152,7 +1152,7 @@ class Doku_Indexer {
*/
protected function addIndexKey($idx, $suffix, $value) {
$index = $this->getIndex($idx, $suffix);
- $id = array_search($value, $index);
+ $id = array_search($value, $index, true);
if ($id === false) {
$id = count($index);
$index[$id] = $value;