diff options
author | Meik Sievertsen <acydburn@phpbb.com> | 2009-04-12 13:21:25 +0000 |
---|---|---|
committer | Meik Sievertsen <acydburn@phpbb.com> | 2009-04-12 13:21:25 +0000 |
commit | e35b5c26e6a3f2a8a764899eb0b03495aac284e0 (patch) | |
tree | 5dbf7026d1184abff76cc5a6f3070e2d9ba0a6fc /phpBB | |
parent | 0319733ea8e9dd5225fc9169bb3a063bf29bcd9c (diff) | |
download | forums-e35b5c26e6a3f2a8a764899eb0b03495aac284e0.tar forums-e35b5c26e6a3f2a8a764899eb0b03495aac284e0.tar.gz forums-e35b5c26e6a3f2a8a764899eb0b03495aac284e0.tar.bz2 forums-e35b5c26e6a3f2a8a764899eb0b03495aac284e0.tar.xz forums-e35b5c26e6a3f2a8a764899eb0b03495aac284e0.zip |
Fix skipping messages if using next/prev PM in history links. (Bug #22205)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9441 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB')
-rw-r--r-- | phpBB/docs/CHANGELOG.html | 1 | ||||
-rw-r--r-- | phpBB/includes/functions_admin.php | 2 | ||||
-rw-r--r-- | phpBB/includes/functions_privmsgs.php | 11 |
3 files changed, 11 insertions, 3 deletions
diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index 5d4c775895..406da37829 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -137,6 +137,7 @@ <li>[Fix] Enforce correct case for template variables</li> <li>[Fix] Set topic_last_view_time on post/reply/edit to circumvent race conditions in auto prune and false removal of topics for manual forum prune (Bug #18055, #43515)</li> <li>[Fix] Correctly split long subject lines according to the used RFC. This fixes extra spaces within long subjects. (Bug #43715)</li> + <li>[Fix] Fix skipping messages if using next/prev PM in history links. (Bug #22205)</li> <li>[Change] Default difference view is now 'inline' instead of 'side by side'</li> <li>[Change] Added new option for merging differences to conflicting files in automatic updater</li> <li>[Change] Add link to user profile in the MCP for user notes and warn user.</li> diff --git a/phpBB/includes/functions_admin.php b/phpBB/includes/functions_admin.php index 7aaff2a562..79282c0358 100644 --- a/phpBB/includes/functions_admin.php +++ b/phpBB/includes/functions_admin.php @@ -664,6 +664,8 @@ function delete_posts($where_type, $where_ids, $auto_sync = true, $posted_sync = { delete_posts($where_type, $_where_ids, $auto_sync, $posted_sync, $post_count_sync, $call_delete_topics); } + + return; }*/ $where_clause = $db->sql_in_set($where_type, $where_ids); diff --git a/phpBB/includes/functions_privmsgs.php b/phpBB/includes/functions_privmsgs.php index 0b02da054a..05653f7e3b 100644 --- a/phpBB/includes/functions_privmsgs.php +++ b/phpBB/includes/functions_privmsgs.php @@ -1763,8 +1763,14 @@ function message_history($msg_id, $user_id, $message_row, $folder, $in_post_mode $url = append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm'); $next_history_pm = $previous_history_pm = $prev_id = 0; - foreach ($rowset as $id => $row) + // Re-order rowset to be able to get the next/prev message rows... + $rowset = array_values($rowset); + + for ($i = 0, $size = sizeof($rowset); $i < $size; $i++) { + $row = &$rowset[$i]; + $id = (int) $row['msg_id']; + $author_id = $row['author_id']; $folder_id = (int) $row['folder_id']; @@ -1795,8 +1801,7 @@ function message_history($msg_id, $user_id, $message_row, $folder, $in_post_mode if ($id == $msg_id) { - $next_history_pm = next($rowset); - $next_history_pm = (sizeof($next_history_pm)) ? (int) $next_history_pm['msg_id'] : 0; + $next_history_pm = (isset($rowset[$i + 1])) ? (int) $rowset[$i + 1]['msg_id'] : 0; $previous_history_pm = $prev_id; } |