Index: branches/UKMO/dev_isf_remapping_UKESM_GO6package_r9314/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90
===================================================================
--- branches/UKMO/dev_isf_remapping_UKESM_GO6package_r9314/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90	(revision 9853)
+++ branches/UKMO/dev_isf_remapping_UKESM_GO6package_r9314/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90	(revision 11248)
@@ -201,4 +201,11 @@
          END DO  
       END DO  
+      !
+      ! (ISF) define barotropic mask and mask the ice shelf point
+      DO jj = 1, jpj
+         DO ji = 1, jpi   ! vector loop
+            ssmask(ji,jj)  = MIN(1._wp,SUM(tmask(ji,jj,:)))
+         END DO
+      END DO
       !
       IF ( ln_isfsubgl ) THEN
@@ -222,12 +229,19 @@
             WHERE (tmask(:,:,jk) < 0) tmask(:,:,jk) = 1 ! restore mask value
          END DO
+         ! update ssmask
+         DO jj = 1, jpj
+            DO ji = 1, jpi   ! vector loop
+               ssmask(ji,jj)  = MIN(1._wp,SUM(tmask(ji,jj,:)))
+            END DO
+         END DO
+         ! update mbathy, misfdep, bathy, risfdep
+         bathy(:,:)   = bathy(:,:)   * ssmask(:,:)
+         risfdep(:,:) = risfdep(:,:) * ssmask(:,:)
+         WHERE ( ssmask(:,:) == 0._wp )
+            misfdep(:,:) = 1
+            mbathy(:,:)  = 0
+         END WHERE
       END IF
 
-      ! (ISF) define barotropic mask and mask the ice shelf point
-      DO jj = 1, jpj
-         DO ji = 1, jpi   ! vector loop
-            ssmask(ji,jj)  = MIN(1._wp,SUM(tmask(ji,jj,:)))
-         END DO
-      END DO
 !!gm  ????
 #if defined key_zdfkpp
Index: branches/UKMO/dev_isf_remapping_UKESM_GO6package_r9314/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90
===================================================================
--- branches/UKMO/dev_isf_remapping_UKESM_GO6package_r9314/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90	(revision 9853)
+++ branches/UKMO/dev_isf_remapping_UKESM_GO6package_r9314/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90	(revision 11248)
@@ -1287,4 +1287,5 @@
       !!  
       INTEGER  ::   ji, jj, jk, jn
+      INTEGER  ::   ios, icompt
       INTEGER  ::   ibtest, ibtestim1, ibtestip1, ibtestjm1, ibtestjp1   ! (ISF)
       INTEGER  ::   zmbathyij, zmbathyip1, zmbathyim1, zmbathyjp1, zmbathyjm1
@@ -1297,5 +1298,4 @@
       !!-----------------
       ! NAMELIST
-      INTEGER  ::   ios
       INTEGER  :: nn_kisfmax    = 999.                              !  
       REAL(wp) :: rn_isfdep_min = 10.0_wp                           ! ice shelf minimal thickness 
@@ -1423,4 +1423,5 @@
          END DO
       END DO
+      !
       ! ensure halo correct 
       IF( lk_mpp ) THEN
@@ -1446,8 +1447,31 @@
       END DO 
       !
-      ! 2.1 be sure misfdep not below mbathy 
-      ! warning because of condition 4 we could have 'wet cell with misfdep below mbathy
-      ! risfdep of these cells will be fix later on (see 5)
-      WHERE( misfdep > mbathy .AND. mbathy > 0 ) misfdep=mbathy
+      ! 2.1 fill isolated grid point in the bathymetry
+      ! need to be done here to fix compatibility (will be done again in zgr_bat_ctl)
+      DO jj = 2, jpjm1
+         DO ji = 2, jpim1
+            ibtest = MAX(  mbathy(ji-1,jj), mbathy(ji+1,jj),   &
+               &           mbathy(ji,jj-1), mbathy(ji,jj+1)  )
+               IF( ibtest < mbathy(ji,jj) ) THEN
+                  mbathy(ji,jj) = ibtest
+                  icompt = icompt + 1
+               END IF
+         END DO
+      END DO
+      !
+      ! ensure halo correct 
+      zdummy(:,:) = FLOAT( mbathy(:,:) ) ; CALL lbc_lnk( zdummy, 'T', 1._wp ) ; mbathy(:,:) = INT( zdummy(:,:) )
+      !
+      IF( lk_mpp )   CALL mpp_sum( icompt )
+      IF( icompt == 0 ) THEN
+         IF(lwp) WRITE(numout,*)'     no isolated ocean grid points'
+      ELSE
+         IF(lwp) WRITE(numout,*)'    ',icompt,' ocean grid points suppressed'
+      ENDIF
+      !
+      ! 2.2 be sure misfdep not below mbathy 
+      ! warning because of condition 2.0 and 2.1 we could have 'wet cell with misfdep below mbathy
+      ! risfdep of these cells will be fix later on
+      WHERE( misfdep > mbathy ) misfdep(:,:) = MAX( 1, mbathy(:,:) )
       !
       ! 3.0 Assure 2 wet cells in the column at T point and along the edge.
