diff --git a/src/MNH/read_surf_mnh.f90 b/src/MNH/read_surf_mnh.f90 index 6c769c64b9113d0122a427f1604a16e3d6f1a249..d3ce73acd1e91e46175fa2eb82168bf1e5f95d68 100644 --- a/src/MNH/read_surf_mnh.f90 +++ b/src/MNH/read_surf_mnh.f90 @@ -1597,11 +1597,11 @@ CHARACTER(LEN=*), INTENT(OUT) :: HCOMMENT ! comment !* 0.2 Declarations of local variables ! CHARACTER(LEN=4), PARAMETER :: YSUFFIX = '_SFX' -CHARACTER(LEN=MNH_LEN_HREC) :: YREC -INTEGER :: ILUOUT -TYPE(TFIELDMETADATA) :: TZFIELD + +CHARACTER(LEN=MNH_LEN_HREC) :: YREC +INTEGER :: ILUOUT +TYPE(TFIELDMETADATA) :: TZFIELD !------------------------------------------------------------------------------- -YREC=TRIM(HREC)//YSUFFIX CALL PRINT_MSG(NVERB_DEBUG,'IO','READ_SURFL0_MNH',TRIM(TPINFILE%CNAME)//': reading '//TRIM(HREC)) ! ILUOUT = TOUT%NLU @@ -1629,6 +1629,10 @@ ELSE ! Add a suffix to logical variables coming from SURFEX ! This is done because some variables can have the same name than MesoNH variables ! This suffix has been added in MesoNH 5.6.0 + YREC = TRIM(HREC) // TRIM(YSUFFIX) + IF ( LEN_TRIM(HREC) + LEN_TRIM(YSUFFIX) > MNH_LEN_HREC ) & + CALL PRINT_MSG( NVERB_WARNING, 'IO', 'READ_SURFL0_MNH', TRIM(TPINFILE%CNAME) // & + ': YREC was truncated from ' // TRIM(HREC) // TRIM(YSUFFIX) // ' to ' // TRIM(YREC) ) CALL PREPARE_METADATA_READ_SURF(YREC,'--',0,TYPELOG,0,'READ_SURFL0_MNH',TZFIELD) CALL IO_Field_read(TPINFILE,TZFIELD,OFIELD,KRESP) diff --git a/src/MNH/write_surf_mnh.f90 b/src/MNH/write_surf_mnh.f90 index 4caa1378c6b7a40677a5c484f220c76ddcbfee81..00be8c417be88ac70fed35791ec47ff6744df868 100644 --- a/src/MNH/write_surf_mnh.f90 +++ b/src/MNH/write_surf_mnh.f90 @@ -1361,11 +1361,11 @@ CHARACTER(LEN=100), INTENT(IN) :: HCOMMENT ! Comment string !* 0.2 Declarations of local variables ! CHARACTER(LEN=4), PARAMETER :: YSUFFIX = '_SFX' + +CHARACTER(LEN=5) :: YMSG CHARACTER(LEN=MNH_LEN_HREC) :: YREC -CHARACTER(LEN=5) :: YMSG -TYPE(TFIELDMETADATA) :: TZFIELD +TYPE(TFIELDMETADATA) :: TZFIELD ! -YREC=TRIM(HREC)//YSUFFIX CALL PRINT_MSG(NVERB_DEBUG,'IO','WRITE_SURFL0_MNH',TRIM(TFILE_SURFEX%CNAME)//': writing '//TRIM(HREC)) ! IF( (CMASK /= 'FULL ').AND. (HREC=='COVER') ) THEN @@ -1376,6 +1376,10 @@ ELSE ! Add a suffix to logical variables coming from SURFEX ! This is done because some variables can have the same name than MesoNH variables ! This suffix has been added in MesoNH 5.6.0 + YREC = TRIM(HREC) // TRIM(YSUFFIX) + IF ( LEN_TRIM(HREC) + LEN_TRIM(YSUFFIX) > MNH_LEN_HREC ) & + CALL PRINT_MSG( NVERB_WARNING, 'IO', 'WRITE_SURFL0_MNH', TRIM(TFILE_SURFEX%CNAME) // & + ': YREC was truncated from ' // TRIM(HREC) // TRIM(YSUFFIX) // ' to ' // TRIM(YREC) ) CALL PREPARE_METADATA_WRITE_SURF(YREC,'--',HCOMMENT,0,TYPELOG,0,'WRITE_SURFL0_MNH',TZFIELD) CALL IO_Field_write(TFILE_SURFEX,TZFIELD,OFIELD,KRESP) END IF