diff --git a/z_spm_matrixvector.c b/z_spm_matrixvector.c
index af4e322c19305fe82f72f6b865c255c17e04e9cc..7f7ea7e5d1da115245deb336e65afd688941c3c0 100644
--- a/z_spm_matrixvector.c
+++ b/z_spm_matrixvector.c
@@ -225,6 +225,7 @@ z_spmSyCSCv(      pastix_complex64_t  alpha,
             {
                 row = spm->rowptr[i-baseval]-baseval;
                 yptr[row] += alpha * valptr[i-baseval] * xptr[col];
+                if( col != row )
                 {
                     yptr[col] += alpha * valptr[i-baseval] * xptr[row];
                 }