From 0ae0fb8713d3373ea6a2b62906bd8ddbeda50cfd Mon Sep 17 00:00:00 2001
From: Delaigue Olivier <olivier.delaigue@irstea.priv>
Date: Wed, 4 Sep 2019 16:12:32 +0200
Subject: [PATCH] v1.3.2.27 BUG: right number of end states returned by
 CreateIniStates for CemaNeige whithout hysteresis #5618

---
 DESCRIPTION         | 2 +-
 NEWS.rmd            | 3 ++-
 R/CreateIniStates.R | 4 ++--
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/DESCRIPTION b/DESCRIPTION
index 9d091b53..4e1d7d01 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,7 +1,7 @@
 Package: airGR
 Type: Package
 Title: Suite of GR Hydrological Models for Precipitation-Runoff Modelling
-Version: 1.3.2.26
+Version: 1.3.2.27
 Date: 2019-09-04
 Authors@R: c(
   person("Laurent", "Coron", role = c("aut", "trl"), comment = c(ORCID = "0000-0002-1503-6204")),
diff --git a/NEWS.rmd b/NEWS.rmd
index 83bda464..adba5366 100644
--- a/NEWS.rmd
+++ b/NEWS.rmd
@@ -14,13 +14,14 @@ output:
 
 
 
-### 1.3.2.26 Release Notes (2019-09-04)
+### 1.3.2.27 Release Notes (2019-09-04)
 
 
 
 #### Bug fixes
 
 - Fixed bug in <code>RunModel_CemaNeige()</code>. The function now runs correctly when <code>IndPeriod_WarmUp = 0L</code> in <code>CreateRunOptions()</code> value without <code>"CumFreq"</code> in order to completely disable the warm-up period (e.g. to perform a forecast form a given initial state).
+- Fixed bug in <code>CreateIniStates()</code>. The function now returns the right number of end states when CemaNeige is used whithout hysteresis.
 - Fixed bug in the <code>RunModel_CemaNeige&#42;()</code> functions. G and Gthr end states are no more inversed in the output values.
 
 ____________________________________________________________________________________
diff --git a/R/CreateIniStates.R b/R/CreateIniStates.R
index c3774e8e..b1748a89 100644
--- a/R/CreateIniStates.R
+++ b/R/CreateIniStates.R
@@ -200,10 +200,10 @@ CreateIniStates <- function(FUN_MOD, InputsModel, IsHyst = FALSE,
   if (is.null(eTGCemaNeigeLayers)) {
     eTGCemaNeigeLayers <- rep(Inf, NLayers)
   }
-  if (is.null(GthrCemaNeigeLayers)) {
+  if (is.null(GthrCemaNeigeLayers) | is.infinite(GthrCemaNeigeLayers)) {
     GthrCemaNeigeLayers <- rep(Inf, NLayers)
   }
-  if (is.null(GlocmaxCemaNeigeLayers)) {
+  if (is.null(GlocmaxCemaNeigeLayers) | is.infinite(GlocmaxCemaNeigeLayers)) {
     GlocmaxCemaNeigeLayers <- rep(Inf, NLayers)
   }
   
-- 
GitLab