@ -526,10 +526,12 @@ contains
allocate(tmp,stat=info,mold=psb_c_get_base_vect_default())
end if
if (allocated(x%v)) then
if (allocated(x%v%v)) then
call x%v%sync()
if (info == psb_success_) call tmp%bld(x%v%v)
call x%v%free(info)
endif
call move_alloc(tmp,x%v)
end subroutine c_vect_cnv
@ -533,10 +533,12 @@ contains
allocate(tmp,stat=info,mold=psb_d_get_base_vect_default())
end subroutine d_vect_cnv
@ -473,10 +473,12 @@ contains
allocate(tmp,stat=info,mold=psb_i_get_base_vect_default())
end subroutine i_vect_cnv
@ -474,10 +474,12 @@ contains
allocate(tmp,stat=info,mold=psb_l_get_base_vect_default())
end subroutine l_vect_cnv
allocate(tmp,stat=info,mold=psb_s_get_base_vect_default())
end subroutine s_vect_cnv
allocate(tmp,stat=info,mold=psb_z_get_base_vect_default())
end subroutine z_vect_cnv