From cfc355c006a3f531e4024e4cd54cbc4740f8635a Mon Sep 17 00:00:00 2001 From: David Mike Simon Date: Mon, 18 Jun 2012 19:40:48 -0700 Subject: [PATCH] Fix for issue 560 where joins could be thrown away by ActiveRecordAdapter::merge_joins --- lib/cancan/model_adapters/active_record_adapter.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/cancan/model_adapters/active_record_adapter.rb b/lib/cancan/model_adapters/active_record_adapter.rb index f20da17..d7d856f 100644 --- a/lib/cancan/model_adapters/active_record_adapter.rb +++ b/lib/cancan/model_adapters/active_record_adapter.rb @@ -145,8 +145,8 @@ module CanCan # Takes two hashes and does a deep merge. def merge_joins(base, add) add.each do |name, nested| - if base[name].is_a?(Hash) && !nested.empty? - merge_joins(base[name], nested) + if base[name].is_a?(Hash) + merge_joins(base[name], nested) unless nested.empty? else base[name] = nested end