Let PhabricatorSearchCheckboxesField survive saved query data with mismatched types
Summary:
Fixes T12851.
This should fix the error I'm seeing, which is:
* `Argument 1 passed to array_fuse() must be of the type array, boolean given`
There may be a better way to patch this up than overriding the getValue() method,
however.
Test Plan:
- Changed the default "Tags" filter to specify `true` instead of `array('self')`, then viewed that filter in the UI.
- Before patch: fatal.
- After patch: page loads. Note that `true` is not interpreted as `array('self')`, but the page isn't broken, which is a big improvement.
Reviewers: #blessed_reviewers, 20after4, chad, amckinley
Reviewed By: #blessed_reviewers, amckinley
Subscribers: Korvin
Maniphest Tasks: T12851
Differential Revision: https://secure.phabricator.com/D18132
This commit is contained in:
@@ -18,6 +18,14 @@ final class PhabricatorSearchCheckboxesField
|
||||
return array();
|
||||
}
|
||||
|
||||
protected function didReadValueFromSavedQuery($value) {
|
||||
if (!is_array($value)) {
|
||||
return array();
|
||||
}
|
||||
|
||||
return $value;
|
||||
}
|
||||
|
||||
protected function getValueFromRequest(AphrontRequest $request, $key) {
|
||||
return $this->getListFromRequest($request, $key);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user