diff --git a/doc/dynare.texi b/doc/dynare.texi
index 135b45dc2b04f0beaba33fd0f2fb4c8339ac9abe..8a6063e7a85b9aa26cd2adcb9eb3eebcd5cbfd46 100644
--- a/doc/dynare.texi
+++ b/doc/dynare.texi
@@ -2901,16 +2901,16 @@ See below.
 
 @item conditional_variance_decomposition = [@var{INTEGER1} @var{INTEGER2} @dots{}]
 Computes a conditional variance decomposition for the specified
-period(s). Conditional variances are given by
+period(s). The periods must be strictly positive. Conditional variances are given by
 @math{var(y_{t+k}|t)}. For period 1, the conditional variance
 decomposition provides the decomposition of the effects of shocks upon
 impact. The results are stored in
-@var{oo_.conditional_variance_decomposition}
+@code{oo_.conditional_variance_decomposition}
 (@pxref{oo_.conditional_variance_decomposition}).
 
 @item pruning
 Discard higher order terms when iteratively computing simulations of
-the solution, as in @cite{Schaumburg and Sims (2008)}.
+the solution, as in @cite{Kim, Kim, Schaumburg and Sims (2008)}.
 
 @item partial_information
 @anchor{partial_information}
diff --git a/matlab/conditional_variance_decomposition.m b/matlab/conditional_variance_decomposition.m
index b9893ad4e10d28a8d9309f77d1a0b14fb91b73ad..806fe94ba31df6ab904cd0b24f7d12698cdc76fd 100644
--- a/matlab/conditional_variance_decomposition.m
+++ b/matlab/conditional_variance_decomposition.m
@@ -33,6 +33,11 @@ function ConditionalVarianceDecomposition = conditional_variance_decomposition(S
 % You should have received a copy of the GNU General Public License
 % along with Dynare.  If not, see <http://www.gnu.org/licenses/>.
 
+if any(Steps <= 0)
+    error(['Conditional variance decomposition: All periods must be strictly ' ...
+           'positive'])
+end
+
 number_of_state_innovations = ...
     StateSpaceModel.number_of_state_innovations;
 transition_matrix = StateSpaceModel.transition_matrix;