diff --git a/base/tools/psb_ccdbldext.F90 b/base/tools/psb_ccdbldext.F90 index d3db5166..fc2652ff 100644 --- a/base/tools/psb_ccdbldext.F90 +++ b/base/tools/psb_ccdbldext.F90 @@ -169,11 +169,10 @@ Subroutine psb_ccdbldext(a,desc_a,novr,desc_ov,info, extype) return endif - - if (extype_ == psb_ovt_asov_) then + if ((extype_ == psb_ovt_asov_).and.& + & (.not.desc_ov%indxmap%row_extendable())) then ! Need to switch to a format that can support overlap, - ! so far: LIST or HASH. This will also reinitialize properly - ! the inex map contents. Encapsulate choice + ! so far: LIST or HASH. Encapsulate choice ! in a separate method. call psb_cd_switch_ovl_indxmap(desc_ov,info) end if diff --git a/base/tools/psb_dcdbldext.F90 b/base/tools/psb_dcdbldext.F90 index c721b96a..d69f21b1 100644 --- a/base/tools/psb_dcdbldext.F90 +++ b/base/tools/psb_dcdbldext.F90 @@ -169,11 +169,10 @@ Subroutine psb_dcdbldext(a,desc_a,novr,desc_ov,info, extype) return endif - - if (extype_ == psb_ovt_asov_) then + if ((extype_ == psb_ovt_asov_).and.& + & (.not.desc_ov%indxmap%row_extendable())) then ! Need to switch to a format that can support overlap, - ! so far: LIST or HASH. This will also reinitialize properly - ! the inex map contents. Encapsulate choice + ! so far: LIST or HASH. Encapsulate choice ! in a separate method. call psb_cd_switch_ovl_indxmap(desc_ov,info) end if diff --git a/base/tools/psb_scdbldext.F90 b/base/tools/psb_scdbldext.F90 index e6054bce..cec4b07e 100644 --- a/base/tools/psb_scdbldext.F90 +++ b/base/tools/psb_scdbldext.F90 @@ -169,11 +169,10 @@ Subroutine psb_scdbldext(a,desc_a,novr,desc_ov,info, extype) return endif - - if (extype_ == psb_ovt_asov_) then + if ((extype_ == psb_ovt_asov_).and.& + & (.not.desc_ov%indxmap%row_extendable())) then ! Need to switch to a format that can support overlap, - ! so far: LIST or HASH. This will also reinitialize properly - ! the inex map contents. Encapsulate choice + ! so far: LIST or HASH. Encapsulate choice ! in a separate method. call psb_cd_switch_ovl_indxmap(desc_ov,info) end if diff --git a/base/tools/psb_zcdbldext.F90 b/base/tools/psb_zcdbldext.F90 index 71d6e30b..0c5f6d57 100644 --- a/base/tools/psb_zcdbldext.F90 +++ b/base/tools/psb_zcdbldext.F90 @@ -169,11 +169,10 @@ Subroutine psb_zcdbldext(a,desc_a,novr,desc_ov,info, extype) return endif - - if (extype_ == psb_ovt_asov_) then + if ((extype_ == psb_ovt_asov_).and.& + & (.not.desc_ov%indxmap%row_extendable())) then ! Need to switch to a format that can support overlap, - ! so far: LIST or HASH. This will also reinitialize properly - ! the inex map contents. Encapsulate choice + ! so far: LIST or HASH. Encapsulate choice ! in a separate method. call psb_cd_switch_ovl_indxmap(desc_ov,info) end if