diff --git a/matlab/dynare_estimation_1.m b/matlab/dynare_estimation_1.m
index 1e4eeb34d1b846453b7b5f649d543ff86b15aea4..a813fbc0abb6fefd1ea752b955fd7f5437bd9067 100644
--- a/matlab/dynare_estimation_1.m
+++ b/matlab/dynare_estimation_1.m
@@ -504,7 +504,7 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
     oo_.Smoother.TrendCoeffs = trend_coeff;
     oo_.Smoother.Variance = P;
     i_endo = bayestopt_.smoother_saved_var_list;
-    if options_.nk ~= 0 && ~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.pshape> 0) && options_.load_mh_file))
+    if ~isempty(options_.nk) && options_.nk ~= 0 && (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.pshape> 0) && options_.load_mh_file)))
         oo_.FilteredVariablesKStepAhead = aK(options_.filter_step_ahead, ...
                                              i_endo,:);
         if isfield(options_,'kalman_algo')
@@ -522,7 +522,7 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
         i1 = dr.order_var(bayestopt_.smoother_var_list(i));
         eval(['oo_.SmoothedVariables.' deblank(M_.endo_names(i1,:)) ' = ' ...
                             'atT(i,:)'';']);
-        if options_.nk > 0 && ~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.pshape> 0) && options_.load_mh_file))
+        if ~isempty(options_.nk) && options_.nk > 0 && ~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.pshape> 0) && options_.load_mh_file))
             eval(['oo_.FilteredVariables.' deblank(M_.endo_names(i1,:)) ...
                   ' = squeeze(aK(1,i,2:end-(options_.nk-1)));']);
         end
diff --git a/tests/steady_state/Linear_steady_state_xfail.mod b/tests/steady_state/Linear_steady_state_xfail.mod
new file mode 100644
index 0000000000000000000000000000000000000000..501a9b4afd979528289ced1099ef466523518f24
--- /dev/null
+++ b/tests/steady_state/Linear_steady_state_xfail.mod
@@ -0,0 +1,23 @@
+// Test whether a nonlinear equation specfied as a linear model is correctly filtered out
+var A;
+
+varexo epsilona;
+parameters  rho;
+
+rho =   .42; 
+
+model(linear);
+log(A) = rho*log(A(-1)) + epsilona;
+end;
+
+initval;
+    A = 1.34;
+end;
+
+steady;
+
+
+
+
+
+