Opened 14 years ago
Closed 11 years ago
#21249 closed defect (bug) (fixed)
WP_List_Table::single_row_columns() needs to do an exact comparison
| Reported by: |
|
Owned by: |
|
|---|---|---|---|
| Milestone: | 4.4 | Priority: | normal |
| Severity: | normal | Version: | |
| Component: | Administration | Keywords: | has-patch dev-feedback |
| Focuses: | Cc: |
Description
If for whatever reason you pass a column ID of 0 when dealing with a list table, WordPress thinks it's a checkbox column because of the loose comparison, i.e. == instead of ===.
Since I don't see why passing a number instead of a string shouldn'r be allowed, attached is a patch.
Attachments (1)
Change History (10)
#2
@
14 years ago
- Keywords reporter-feedback removed
D'oh. Yes, it does. Seems PHP's type coercion is at least as treacherous as the one in JavaScript.
#3
@
14 years ago
- Cc kurtpayne added
- Keywords needs-testing removed
- Milestone changed from Awaiting Review to 3.4.3
I can reproduce the original bug. The patch looks good.
#4
@
13 years ago
- Milestone changed from 3.4.3 to 3.5
Would if ( 'cb' == $column_key ) in print_column_headers() also be affected?
#5
@
13 years ago
Seems like it would be affected, yes.
I can't test though because I don't remember exactly what I was working on at the time other than maybe I was creating columns programically using a numeric array.
#6
@
13 years ago
- Milestone changed from 3.5 to Future Release
I'm going to go with a column ID of "0" being invalid and punt this until we are able to fix it everywhere.
#7
@
11 years ago
- Keywords dev-feedback added
- Priority changed from lowest to normal
- Severity changed from trivial to normal
Are you saying
'cb' == 0evals to true?