# HG changeset patch
# User Kim Alvefur <zash@zash.se>
# Date 1611604691 -3600
# Node ID 5798ab73561936c7803c1f80911474620bfc28ba
# Parent  2115496e82517b38ef411dab056e6bf9ce1715d1
util.interpolation: Fix combination of filters and fallback values #1623

diff -r 2115496e8251 -r 5798ab735619 util/interpolation.lua
--- a/util/interpolation.lua	Tue Jan 12 13:25:08 2021 +0100
+++ b/util/interpolation.lua	Mon Jan 25 20:58:11 2021 +0100
@@ -43,11 +43,11 @@
 				end
 			end
 			if funcs then
-				while value ~= nil and opt == '|' do
+				while opt == '|' do
 					local f;
 					f, raw, opt, e = s_match(block, "^([%a_][%w_.]*)(!?)(%p?)()", e);
 					f = funcs[f];
-					if f then value = f(value); end
+					if value ~= nil and f then value = f(value); end
 				end
 			end
 			if opt == '#' or opt == '%' then