Show
Ignore:
Timestamp:
07/04/06 20:01:31 (3 years ago)
Author:
ryan
Message:

Don't allow negative values when paging. fixes #2893

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/2.0/wp-includes/classes.php

    r3914 r3958  
    306306            $q['page'] = trim($q['page'], '/'); 
    307307            $q['page'] = (int) $q['page']; 
     308            $q['page'] = abs($q['page']); 
    308309        } 
    309310     
     
    618619        // Paging 
    619620        if (empty($q['nopaging']) && ! $this->is_single && ! $this->is_page) { 
    620             $page = $q['paged']
     621            $page = abs(intval($q['paged']))
    621622            if (empty($page)) { 
    622623                $page = 1; 
     
    624625 
    625626            if (($q['what_to_show'] == 'posts')) { 
    626                 $pgstrt = ''; 
    627                 $pgstrt = (intval($page) -1) * $q['posts_per_page'] . ', '; 
    628                 $limits = 'LIMIT '.$pgstrt.$q['posts_per_page']; 
     627                $q['offset'] = abs(intval($q['offset'])); 
     628                if ( empty($q['offset']) ) { 
     629                    $pgstrt = ''; 
     630                    $pgstrt = (intval($page) -1) * $q['posts_per_page'] . ', '; 
     631                    $limits = 'LIMIT '.$pgstrt.$q['posts_per_page']; 
     632                } else { // we're ignoring $page and using 'offset' 
     633                    $pgstrt = $q['offset'] . ', '; 
     634                    $limits = 'LIMIT ' . $pgstrt . $q['posts_per_page']; 
     635                } 
    629636            } elseif ($q['what_to_show'] == 'days') { 
    630637                $startrow = $q['posts_per_page'] * (intval($page)-1);