diff --git a/models/behaviors/linkable.php b/models/behaviors/linkable.php index cb0622b..8bc10da 100644 --- a/models/behaviors/linkable.php +++ b/models/behaviors/linkable.php @@ -259,14 +259,14 @@ class LinkableBehavior extends ModelBehavior { // in either/or, but a couple should include BOTH the // options AND the association settings. foreach (array('fields', 'conditions') AS $fld) { - if (empty($options[$fld])) - $options[$fld] = array(); - elseif (!is_array($options[$fld])) + if (isset($options[$fld]) && empty($options[$fld]) && !is_array($options[$fld])) + unset($options[$fld]); + elseif (!empty($options[$fld]) && !is_array($options[$fld])) $options[$fld] = array($options[$fld]); - if (empty($association[$fld])) + if (isset($association[$fld]) && empty($association[$fld]) && !is_array($association[$fld])) unset($association[$fld]); - elseif (!is_array($association[$fld])) + elseif (!empty($association[$fld]) && !is_array($association[$fld])) $association[$fld] = array($association[$fld]); if (isset($options[$fld]) && isset($association[$fld]))