From 8c6597401a9682d0bb3aa7cf3e68834f9c0a602c Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Mon, 28 Jun 2021 10:35:53 +0200 Subject: [PATCH] Philippe 28/06/2021: IO: better management of pre-5.5 files (default values for missing fields instead of crash) --- src/MNH/ini_segn.f90 | 3 ++- src/MNH/read_field.f90 | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/MNH/ini_segn.f90 b/src/MNH/ini_segn.f90 index 1663871b9..590efa55c 100644 --- a/src/MNH/ini_segn.f90 +++ b/src/MNH/ini_segn.f90 @@ -441,7 +441,8 @@ END IF ! routine which read related informations in the EXSEG descriptor in order to ! check coherence between both informations. ! -CALL IO_Field_read(TPINIFILE,'LOCEAN',LOCEAN) +CALL IO_Field_read(TPINIFILE,'LOCEAN',LOCEAN,IRESP) +IF ( IRESP /= 0 ) LOCEAN = .FALSE. ! CALL READ_EXSEG_n(KMI,TZFILE_DES,YCONF,GFLAT,GUSERV,GUSERC, & GUSERR,GUSERI,GUSECI,GUSERS,GUSERG,GUSERH,GUSECHEM, & diff --git a/src/MNH/read_field.f90 b/src/MNH/read_field.f90 index f6ae881a7..1f8d4b3ca 100644 --- a/src/MNH/read_field.f90 +++ b/src/MNH/read_field.f90 @@ -641,7 +641,6 @@ IF (LIBM .AND. CPROGRAM=='MESONH') THEN ! ENDIF ! -ZLRECYCL=.FALSE. TZFIELD%CMNHNAME = 'RECYCLING' TZFIELD%CLONGNAME = 'RECYCLING' TZFIELD%CSTDNAME = '' @@ -651,7 +650,10 @@ TZFIELD%NGRID = 1 TZFIELD%NTYPE = TYPELOG TZFIELD%NDIMS = 0 TZFIELD%LTIMEDEP = .FALSE. -CALL IO_Field_read(TPINIFILE,TZFIELD,ZLRECYCL) +CALL IO_Field_read(TPINIFILE,TZFIELD,ZLRECYCL,IRESP) +!If field not found (file from older version of MesoNH) => set ZLRECYCL to false +IF ( IRESP /= 0 ) ZLRECYCL = .FALSE. + IF (ZLRECYCL) THEN ! TZFIELD%CMNHNAME = 'RCOUNT' -- GitLab