From ae0a473ae5ade1d4e55820e5df9ff9953d77f4a2 Mon Sep 17 00:00:00 2001
From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr>
Date: Tue, 11 Apr 2017 10:16:32 +0200
Subject: [PATCH] Philippe 11/04/2017: IO: bug fix: problem when writing arrays
 of character in netCDF file

---
 src/LIB/SURCOUCHE/src/mode_netcdf.f90 | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/LIB/SURCOUCHE/src/mode_netcdf.f90 b/src/LIB/SURCOUCHE/src/mode_netcdf.f90
index 1459f4806..29b23fcd1 100644
--- a/src/LIB/SURCOUCHE/src/mode_netcdf.f90
+++ b/src/LIB/SURCOUCHE/src/mode_netcdf.f90
@@ -1599,6 +1599,8 @@ TYPE(IOCDF), POINTER                      :: PZCDF
 CHARACTER(LEN=*),DIMENSION(:),INTENT(IN)  :: HFIELD
 INTEGER,                      INTENT(OUT) :: KRESP
 !
+INTEGER(KIND=IDCDF_KIND),PARAMETER :: IONE = 1
+!
 INTEGER(KIND=IDCDF_KIND)               :: STATUS
 INTEGER(KIND=IDCDF_KIND)               :: INCID
 CHARACTER(LEN=LEN(TPFIELD%CMNHNAME))   :: YVARNAME
@@ -1636,7 +1638,7 @@ ELSE
 END IF
 
 ! Write the data
-STATUS = NF90_PUT_VAR(INCID, IVARID, HFIELD)
+STATUS = NF90_PUT_VAR(INCID, IVARID, HFIELD(1:ISIZE)(1:ILEN), START=(/IONE,IONE/), COUNT=(/ILEN,ISIZE/))
 IF (status /= NF90_NOERR) CALL HANDLE_ERR(status,__LINE__,'IO_WRITE_FIELD_NC4_C1[NF90_PUT_VAR] '//TRIM(TPFIELD%CMNHNAME),IRESP)
 
 KRESP = IRESP
-- 
GitLab