From ceee5baae6d0194264dc67c668b52b73016e543e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonne=20Ha=C3=9F?= Date: Sat, 21 Sep 2013 20:18:20 +0200 Subject: [PATCH] raise original exception in i18n interpolation fallback middleware --- lib/i18n_interpolation_fallbacks.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/i18n_interpolation_fallbacks.rb b/lib/i18n_interpolation_fallbacks.rb index f5af4b1de..d379a965e 100644 --- a/lib/i18n_interpolation_fallbacks.rb +++ b/lib/i18n_interpolation_fallbacks.rb @@ -5,17 +5,19 @@ module I18n default = extract_non_symbol_default!(options) if options[:default] options.merge!(:default => default) if default + original_exception = nil + I18n.fallbacks[locale].each do |fallback| begin result = super(fallback, key, options) return result unless result.nil? - rescue I18n::MissingInterpolationArgument - rescue I18n::InvalidPluralizationData + rescue I18n::MissingInterpolationArgument, I18n::InvalidPluralizationData => e + original_exception ||= e end end return super(locale, nil, options) if default - raise(I18n::MissingInterpolationArgument.new(key, options, locale)) + raise original_exception end end end