diff --git a/src/LIB/SURCOUCHE/src/mode_field.f90 b/src/LIB/SURCOUCHE/src/mode_field.f90 index 2ba86e49f8df640c8209b0bb1c0456d2d16171aa..3e62ade657a1cac172e5813b8d29ce76c2faf0b1 100644 --- a/src/LIB/SURCOUCHE/src/mode_field.f90 +++ b/src/LIB/SURCOUCHE/src/mode_field.f90 @@ -3338,6 +3338,7 @@ END IF IF (.NOT.ASSOCIATED(CSURF)) THEN CALL PRINT_MSG(NVERB_DEBUG,'GEN','ALLOC_FIELD_SCALARS',' CSURF was not associated') ALLOCATE(CHARACTER(LEN=4) :: CSURF) + CSURF = '' END IF ! END SUBROUTINE ALLOC_FIELD_SCALARS @@ -3426,6 +3427,7 @@ END IF IF (.NOT.ASSOCIATED(CSURF)) THEN CALL PRINT_MSG(NVERB_DEBUG,'GEN','INI_FIELD_SCALARS',' CSURF was not associated') ALLOCATE(CHARACTER(LEN=4) :: CSURF) + CSURF = '' END IF CALL FIND_FIELD_ID_FROM_MNHNAME('SURF',IID,IRESP) TFIELDLIST(IID)%TFIELD_C0D(1)%DATA=>CSURF diff --git a/src/LIB/SURCOUCHE/src/mode_fm.f90 b/src/LIB/SURCOUCHE/src/mode_fm.f90 index 18fd44e58b0d24ce7577b0bacd914f97e6b1a09d..8134fb55b0c0e12e5ed69e752fa7ab4d0fddae45 100644 --- a/src/LIB/SURCOUCHE/src/mode_fm.f90 +++ b/src/LIB/SURCOUCHE/src/mode_fm.f90 @@ -79,6 +79,9 @@ CALL PRINT_MSG(NVERB_DEBUG,'IO','IO_FILE_OPEN_ll','opening '//TRIM(TPFILE%CNAME) ! IF (.NOT.ASSOCIATED(TPFILE)) CALL PRINT_MSG(NVERB_FATAL,'IO','IO_FILE_OPEN_ll','TPFILE is not associated') ! +TZFILE_DES => NULL() +TZFILE_DUMMY => NULL() +! TPFILE%NOPEN = TPFILE%NOPEN + 1 TPFILE%NOPEN_CURRENT = TPFILE%NOPEN_CURRENT + 1 ! @@ -275,6 +278,7 @@ IF (.NOT. GCONFIO) THEN STOP END IF +ININAR = 0 INPRAR = TPFILE%NLFINPRAR IROWF = 0 IRESP = 0 diff --git a/src/LIB/SURCOUCHE/src/mode_netcdf.f90 b/src/LIB/SURCOUCHE/src/mode_netcdf.f90 index 29cd0f9b2e023142693c5757fe98c83aa4259fc0..8ed0d895bd9589b3e0a890cf1f136f5fd3141e55 100644 --- a/src/LIB/SURCOUCHE/src/mode_netcdf.f90 +++ b/src/LIB/SURCOUCHE/src/mode_netcdf.f90 @@ -322,8 +322,11 @@ SUBROUTINE WRITE_HOR_COORD(TDIM,HLONGNAME,HSTDNAME,HAXIS,PSHIFT,KBOUNDLOW,KBOUND END IF IF (.NOT.TPFILE%LMASTER) THEN - IF (PRESENT(PCOORDS)) & + IF (PRESENT(PCOORDS)) THEN + ALLOCATE(ZTAB(0)) !To prevent false positive with valgrind + GALLOC = .TRUE. CALL GATHER_XXFIELD(YDIR,PCOORDS,ZTAB,TPFILE%NMASTER_RANK,TPFILE%NMPICOMM) + END IF ELSE !TPFILE%LMASTER ISIZE = TDIM%LEN YVARNAME = TRIM(TDIM%NAME) @@ -401,6 +404,8 @@ SUBROUTINE WRITE_HOR_2DCOORD(PX,PY,HLAT,HLON) ZLAT,ZLON) IF (.NOT.TPFILE%LMASTER) THEN + ALLOCATE(ZTAB1(0,0),ZTAB2(0,0)) !To prevent false positive with valgrind + GALLOC1 = .TRUE. ; GALLOC2 = .TRUE. CALL GATHER_XYFIELD(ZLAT,ZTAB1,TPFILE%NMASTER_RANK,TPFILE%NMPICOMM) CALL GATHER_XYFIELD(ZLON,ZTAB2,TPFILE%NMASTER_RANK,TPFILE%NMPICOMM) ELSE !TPFILE%LMASTER