Opened 8 years ago
Last modified 8 years ago
#41826 new defect (bug)
WP_Comment_Query can generate negative offset in LIMIT clause
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Milestone: | Awaiting Review | Priority: | normal |
| Severity: | normal | Version: | 4.9 |
| Component: | Comments | Keywords: | has-patch has-unit-tests |
| Focuses: | Cc: |
Description
The paged argument in WP_Comment_Query was introduced in #38268
There's a problem with the paged as 0 case.
Example:
When the paged is 0 and number is 2, WP_Comment_Query generates the LIMIT clause:
LIMIT -2, 2
instead of
LIMIT 0, 2
According to the MySQL documentation, the offset in the LIMIT clause shouldn't be negative:
https://dev.mysql.com/doc/refman/5.7/en/select.html
I think we should handle it in the same way as in WP_Query, where the 0 case is treated as the default, that is 1.
Attachments (2)
Change History (5)
Note: See
TracTickets for help on using
tickets.
Here we treat
paged0 as the default value, i.e. 1.We try to show it explicitly in the code, so it's more obvious to the reader, similar how it's done in
WP_Query.Included a test for this case.