fixed a few memory leaks

This commit is contained in:
Ulrike Yang 2015-08-17 13:35:41 -07:00
parent b4803d8c83
commit fd3278c005
3 changed files with 8 additions and 4 deletions

View File

@ -592,6 +592,8 @@ HYPRE_Int hypre_CreateLambda(void *amg_vdata)
}
}
}
if (max_sends) hypre_TFree(all_send_procs);
if (max_recvs) hypre_TFree(all_recv_procs);
L_diag = hypre_CSRMatrixCreate(num_rows_L, num_rows_L, num_nonzeros_diag);
L_offd = hypre_CSRMatrixCreate(num_rows_L, num_cols_offd_L, num_nonzeros_offd);

View File

@ -4215,6 +4215,7 @@ hypre_BoomerAMGTruncandBuild( hypre_ParCSRMatrix *P,
{
hypre_CSRMatrix *P_offd = hypre_ParCSRMatrixOffd(P);
hypre_ParCSRCommPkg *commpkg_P = hypre_ParCSRMatrixCommPkg(P);
HYPRE_Int *col_map_offd = hypre_ParCSRMatrixColMapOffd(P);
HYPRE_Int *P_offd_i = hypre_CSRMatrixI(P_offd);
HYPRE_Int *P_offd_j = hypre_CSRMatrixJ(P_offd);
@ -4297,6 +4298,7 @@ hypre_BoomerAMGTruncandBuild( hypre_ParCSRMatrix *P,
hypre_CSRMatrixNumCols(P_offd) = new_num_cols_offd;
}
if (commpkg_P != NULL) hypre_MatvecCommPkgDestroy(commpkg_P);
hypre_MatvecCommPkgCreate(P);
return(0);

View File

@ -2468,8 +2468,8 @@ hypre_ParCSRMatrixAminvDB( hypre_ParCSRMatrix *A, hypre_ParCSRMatrix *B,
HYPRE_Int *send_map_elmts_C;
HYPRE_Int *map_to_B;
HYPRE_Int *C_diag_array;
HYPRE_Int *C_offd_array;
/*HYPRE_Int *C_diag_array;
HYPRE_Int *C_offd_array;*/
HYPRE_Complex *D_tmp;
HYPRE_Int size, rest, num_threads, ii;
@ -2477,8 +2477,8 @@ hypre_ParCSRMatrixAminvDB( hypre_ParCSRMatrix *A, hypre_ParCSRMatrix *B,
hypre_MPI_Comm_rank(comm,&my_id);
num_threads = hypre_NumThreads();
C_diag_array = hypre_CTAlloc(HYPRE_Int, num_threads);
C_offd_array = hypre_CTAlloc(HYPRE_Int, num_threads);
/*C_diag_array = hypre_CTAlloc(HYPRE_Int, num_threads);
C_offd_array = hypre_CTAlloc(HYPRE_Int, num_threads);*/
/*---------------------------------------------------------------------