From 727037911a365c1c2bf555f9bb600803346ad87d Mon Sep 17 00:00:00 2001
From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr>
Date: Fri, 9 Dec 2016 16:01:57 +0100
Subject: [PATCH] Philippe 09/12/2016: do not fail if no COMMENT found in
 netCDF file (they were not written anymore if empty)

---
 src/LIB/SURCOUCHE/src/mode_netcdf.f90 | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/src/LIB/SURCOUCHE/src/mode_netcdf.f90 b/src/LIB/SURCOUCHE/src/mode_netcdf.f90
index 0b77712cb..6e3014f00 100644
--- a/src/LIB/SURCOUCHE/src/mode_netcdf.f90
+++ b/src/LIB/SURCOUCHE/src/mode_netcdf.f90
@@ -1228,14 +1228,18 @@ INTEGER(KIND=IDCDF_KIND) :: ICOMLEN
 STATUS = NF90_GET_ATT(KNCID, KVARID, 'GRID', TPFMH%GRID)
 IF (STATUS /= NF90_NOERR) CALL HANDLE_ERR(STATUS,__LINE__,'READATTR[NF90_GET_ATT_INT] '//TRIM(HVAR))
 STATUS = NF90_INQUIRE_ATTRIBUTE(KNCID, KVARID, 'COMMENT', LEN=ICOMLEN)
-IF (STATUS /= NF90_NOERR) CALL HANDLE_ERR(STATUS,__LINE__,'READATTR[NF90_INQUIRE_ATTRIBUTE] '//TRIM(HVAR))
-IF (ICOMLEN <= JPXKRK) THEN
-   TPFMH%COMLEN = ICOMLEN
-   STATUS = NF90_GET_ATT(KNCID, KVARID, 'COMMENT', TPFMH%COMMENT)
-   IF (STATUS /= NF90_NOERR) CALL HANDLE_ERR(status,__LINE__,'READATTR[NF90_GET_ATT] '//TRIM(HVAR))
+!IF (STATUS /= NF90_NOERR) CALL HANDLE_ERR(STATUS,__LINE__,'READATTR[NF90_INQUIRE_ATTRIBUTE] '//TRIM(HVAR))
+IF (STATUS == NF90_NOERR) THEN
+  IF (ICOMLEN <= JPXKRK) THEN
+    TPFMH%COMLEN = ICOMLEN
+    STATUS = NF90_GET_ATT(KNCID, KVARID, 'COMMENT', TPFMH%COMMENT)
+    IF (STATUS /= NF90_NOERR) CALL HANDLE_ERR(status,__LINE__,'READATTR[NF90_GET_ATT] '//TRIM(HVAR))
+  ELSE
+    PRINT *, 'READATTR : '//TRIM(HVAR)//' COMMENT attribute ignored because too long.'
+    TPFMH%COMLEN = 0
+  END IF
 ELSE
-   PRINT *, 'READATTR : '//TRIM(HVAR)//' COMMENT attribute ignored because too long.'
-   TPFMH%COMLEN = 0
+  TPFMH%COMLEN = 0
 END IF
 END SUBROUTINE READATTR
 
-- 
GitLab