diff options
Diffstat (limited to 'phpBB/phpbb')
-rw-r--r-- | phpBB/phpbb/cache/driver/file.php | 2 | ||||
-rw-r--r-- | phpBB/phpbb/cron/task/text_reparser/reparser.php | 4 | ||||
-rw-r--r-- | phpBB/phpbb/db/migration/data/v320/text_reparser.php | 15 | ||||
-rw-r--r-- | phpBB/phpbb/search/fulltext_sphinx.php | 8 |
4 files changed, 16 insertions, 13 deletions
diff --git a/phpBB/phpbb/cache/driver/file.php b/phpBB/phpbb/cache/driver/file.php index 497f00c06b..e9d2ba8e04 100644 --- a/phpBB/phpbb/cache/driver/file.php +++ b/phpBB/phpbb/cache/driver/file.php @@ -576,7 +576,7 @@ class file extends \phpbb\cache\driver\base if (function_exists('opcache_invalidate')) { - @opcache_invalidate($this->cache_file); + @opcache_invalidate($file); } try diff --git a/phpBB/phpbb/cron/task/text_reparser/reparser.php b/phpBB/phpbb/cron/task/text_reparser/reparser.php index 69392f5ac9..fa3bc67325 100644 --- a/phpBB/phpbb/cron/task/text_reparser/reparser.php +++ b/phpBB/phpbb/cron/task/text_reparser/reparser.php @@ -85,7 +85,7 @@ class reparser extends \phpbb\cron\task\base if ($this->resume_data === null) { - $this->reparser_manager->get_resume_data($this->reparser_name); + $this->resume_data = $this->reparser_manager->get_resume_data($this->reparser_name); } } @@ -96,7 +96,7 @@ class reparser extends \phpbb\cron\task\base { if ($this->resume_data === null) { - $this->reparser_manager->get_resume_data($this->reparser_name); + $this->resume_data = $this->reparser_manager->get_resume_data($this->reparser_name); } if (!isset($this->resume_data['range-max']) || $this->resume_data['range-max'] >= $this->resume_data['range-min']) diff --git a/phpBB/phpbb/db/migration/data/v320/text_reparser.php b/phpBB/phpbb/db/migration/data/v320/text_reparser.php index 03c5d39fe4..6b8cf93cc9 100644 --- a/phpBB/phpbb/db/migration/data/v320/text_reparser.php +++ b/phpBB/phpbb/db/migration/data/v320/text_reparser.php @@ -54,13 +54,16 @@ class text_reparser extends \phpbb\db\migration\container_aware_migration /** @var manager $reparser_manager */ $reparser_manager = $this->container->get('text_reparser.manager'); - /** @var reparser_interface[] $reparsers */ - $reparsers = $this->container->get('text_reparser_collection'); - - // Initialize all reparsers - foreach ($reparsers as $name => $reparser) + if (!is_array($resume_data)) { - $reparser_manager->update_resume_data($name, 1, $reparser->get_max_id(), 100); + /** @var reparser_interface[] $reparsers */ + $reparsers = $this->container->get('text_reparser_collection'); + + // Initialize all reparsers + foreach ($reparsers as $name => $reparser) + { + $reparser_manager->update_resume_data($name, 1, $reparser->get_max_id(), 100); + } } // Sometimes a cron job is too much diff --git a/phpBB/phpbb/search/fulltext_sphinx.php b/phpBB/phpbb/search/fulltext_sphinx.php index 89c615e087..59c3d55076 100644 --- a/phpBB/phpbb/search/fulltext_sphinx.php +++ b/phpBB/phpbb/search/fulltext_sphinx.php @@ -648,7 +648,7 @@ class fulltext_sphinx $this->sphinx->SetFilter('deleted', array(0)); $this->sphinx->SetLimits($start, (int) $per_page, SPHINX_MAX_MATCHES); - $result = $this->sphinx->Query($search_query_prefix . str_replace('"', '"', $this->search_query), $this->indexes); + $result = $this->sphinx->Query($search_query_prefix . $this->sphinx->EscapeString(str_replace('"', '"', $this->search_query)), $this->indexes); // Could be connection to localhost:9312 failed (errno=111, // msg=Connection refused) during rotate, retry if so @@ -656,7 +656,7 @@ class fulltext_sphinx while (!$result && (strpos($this->sphinx->GetLastError(), "errno=111,") !== false) && $retries--) { usleep(SPHINX_CONNECT_WAIT_TIME); - $result = $this->sphinx->Query($search_query_prefix . str_replace('"', '"', $this->search_query), $this->indexes); + $result = $this->sphinx->Query($search_query_prefix . $this->sphinx->EscapeString(str_replace('"', '"', $this->search_query)), $this->indexes); } if ($this->sphinx->GetLastError()) @@ -679,7 +679,7 @@ class fulltext_sphinx $start = floor(($result_count - 1) / $per_page) * $per_page; $this->sphinx->SetLimits((int) $start, (int) $per_page, SPHINX_MAX_MATCHES); - $result = $this->sphinx->Query($search_query_prefix . str_replace('"', '"', $this->search_query), $this->indexes); + $result = $this->sphinx->Query($search_query_prefix . $this->sphinx->EscapeString(str_replace('"', '"', $this->search_query)), $this->indexes); // Could be connection to localhost:9312 failed (errno=111, // msg=Connection refused) during rotate, retry if so @@ -687,7 +687,7 @@ class fulltext_sphinx while (!$result && (strpos($this->sphinx->GetLastError(), "errno=111,") !== false) && $retries--) { usleep(SPHINX_CONNECT_WAIT_TIME); - $result = $this->sphinx->Query($search_query_prefix . str_replace('"', '"', $this->search_query), $this->indexes); + $result = $this->sphinx->Query($search_query_prefix . $this->sphinx->EscapeString(str_replace('"', '"', $this->search_query)), $this->indexes); } } |