From 44f3fd9502fb83ea26a344f031e124ac443517a0 Mon Sep 17 00:00:00 2001 From: Stratos Paraskevaidis Date: Tue, 24 Mar 2015 19:53:47 +0200 Subject: [PATCH] Fix .or with interval and on same field not working bug --- lib/origin/mergeable.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/origin/mergeable.rb b/lib/origin/mergeable.rb index 9d7eab6..3493987 100644 --- a/lib/origin/mergeable.rb +++ b/lib/origin/mergeable.rb @@ -150,7 +150,9 @@ def __multi__(criterion, operator) next unless expr criteria = sel[operator] || [] normalized = expr.inject({}) do |hash, (field, value)| - hash.merge!(field.__expr_part__(value.__expand_complex__)) + hash.merge!(field.__expr_part__(value.__expand_complex__)) do |_, existing, additional| + existing.merge(additional) + end hash end sel.store(operator, criteria.push(normalized))