Smart groups broken when "Enable multiple bulk email address for a contact" setting is off
When setting "Enable multiple bulk email address for a contact" is off then ALL smart groups have additional condition (Email On Hold) because of false-positive effect of code:
https://github.com/civicrm/civicrm-core/pull/12942/files
elseif ($id == 'email_on_hold') {
if ($onHoldValue = CRM_Utils_Array::value('email_on_hold', $formValues)) {
$onHoldValue = (array) $onHoldValue;
$params[] = array('on_hold', 'IN', $onHoldValue, 0, 0);
}
}
For such case email_on_hold
has value:
$formValues['email_on_hold'] = [
'on_hold' => NULL,
];
which is false-positive in condition