diff --git a/src/MNH/num_diff.f90 b/src/MNH/num_diff.f90
index 7dc3b66c4a68ebe300e9771569a9223191f33d87..af0265cb623c78bda525b7a84e8929a46a0650cd 100644
--- a/src/MNH/num_diff.f90
+++ b/src/MNH/num_diff.f90
@@ -214,6 +214,7 @@ END MODULE MODI_NUM_DIFF
 !!                 05/07    (C.Lac)        Separation between variables
 !!                 07/09    (C.Lac)        Correction on budget calls
 !!     J.Escobar : 15/09/2015 : WENO5 & JPHEXT <> 1 
+!!     J.Escobar : 05/12/2017 : Pb SegFault , correct IF(ONUMDIFTH/OZDIFFU) nesting
 !!
 !-------------------------------------------------------------------------------
 !
@@ -347,20 +348,20 @@ IF (ONUMDIFTH) THEN
    CALL NUM_DIFF_ALGO_Z(PRTHS, PTHM, IGRID, PRHODJ,            &
                          PDK2TH, PDK4TH, PLSTHM,               &
                          TZHALO2LIST%HALO2, TZHALO2LSLIST%HALO2)
-!!$  ELSE
-!!$   CALL NUM_DIFF_ALGO(PRTHS, PTHM, IGRID, PRHODJ,              &
-!!$                      PDK2TH, PDK4TH, PLSTHM,                  &
-!!$                     TZHALO2LIST%HALO2, TZHALO2LSLIST%HALO2)
-!!$  ENDIF
- ELSE
-  IF (OZDIFFU) THEN   ! call z-diffusion for potential temperature
-    CALL NUM_DIFF_ALGO_Z(PRTHS, PTHM, IGRID, PRHODJ, &
-                         PDK2TH, PDK4TH, PLSTHM )
   ELSE
-    CALL NUM_DIFF_ALGO(PRTHS, PTHM, IGRID, PRHODJ, &
-                         PDK2TH, PDK4TH, PLSTHM )
+   CALL NUM_DIFF_ALGO(PRTHS, PTHM, IGRID, PRHODJ,              &
+                      PDK2TH, PDK4TH, PLSTHM,                  &
+                     TZHALO2LIST%HALO2, TZHALO2LSLIST%HALO2)
   ENDIF
- ENDIF
+!!$ ELSE
+!!$  IF (OZDIFFU) THEN   ! call z-diffusion for potential temperature
+!!$    CALL NUM_DIFF_ALGO_Z(PRTHS, PTHM, IGRID, PRHODJ, &
+!!$                         PDK2TH, PDK4TH, PLSTHM )
+!!$  ELSE
+!!$    CALL NUM_DIFF_ALGO(PRTHS, PTHM, IGRID, PRHODJ, &
+!!$                         PDK2TH, PDK4TH, PLSTHM )
+!!$  ENDIF
+!!$ ENDIF
 !
  IF ( GTKEALLOC ) THEN
 !!$  IF(NHALO == 1) THEN
@@ -383,20 +384,20 @@ IF (ONUMDIFTH) THEN
       CALL NUM_DIFF_ALGO_Z(PRRS(:,:,:,1), PRM(:,:,:,1), IGRID, PRHODJ, &
                            PDK2TH, PDK4TH,                             &
                            PLSRVM, TZHALO2LIST%HALO2, TZHALO2LSLIST%HALO2)
-!!$    ELSE
-!!$      CALL NUM_DIFF_ALGO(PRRS(:,:,:,1), PRM(:,:,:,1), IGRID, PRHODJ, & 
-!!$                         PDK2TH, PDK4TH, PLSRVM,                     &
-!!$                         TZHALO2LIST%HALO2, TZHALO2LSLIST%HALO2)
-!!$    ENDIF
-  ELSE
-    IF (OZDIFFU) THEN   ! call z-diffusion for wv mixing ratio
-      CALL NUM_DIFF_ALGO_Z(PRRS(:,:,:,1), PRM(:,:,:,1), IGRID, PRHODJ, &
-                           PDK2TH, PDK4TH, PLSRVM)
     ELSE
-     CALL NUM_DIFF_ALGO(PRRS(:,:,:,1), PRM(:,:,:,1), IGRID, PRHODJ, &
-                        PDK2TH, PDK4TH, PLSRVM)
+      CALL NUM_DIFF_ALGO(PRRS(:,:,:,1), PRM(:,:,:,1), IGRID, PRHODJ, & 
+                         PDK2TH, PDK4TH, PLSRVM,                     &
+                         TZHALO2LIST%HALO2, TZHALO2LSLIST%HALO2)
     ENDIF
-  ENDIF
+!!$  ELSE
+!!$    IF (OZDIFFU) THEN   ! call z-diffusion for wv mixing ratio
+!!$      CALL NUM_DIFF_ALGO_Z(PRRS(:,:,:,1), PRM(:,:,:,1), IGRID, PRHODJ, &
+!!$                           PDK2TH, PDK4TH, PLSRVM)
+!!$    ELSE
+!!$     CALL NUM_DIFF_ALGO(PRRS(:,:,:,1), PRM(:,:,:,1), IGRID, PRHODJ, &
+!!$                        PDK2TH, PDK4TH, PLSRVM)
+!!$    ENDIF
+!!$  ENDIF
  ENDIF
 !
 ! In some situations, it makes sense to use the z-diffusion also for cloud water, but it is