Return-Path: X-Original-To: apmail-celix-commits-archive@www.apache.org Delivered-To: apmail-celix-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 87A771801C for ; Wed, 18 Nov 2015 12:23:30 +0000 (UTC) Received: (qmail 12138 invoked by uid 500); 18 Nov 2015 12:23:30 -0000 Delivered-To: apmail-celix-commits-archive@celix.apache.org Received: (qmail 12116 invoked by uid 500); 18 Nov 2015 12:23:30 -0000 Mailing-List: contact commits-help@celix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@celix.apache.org Delivered-To: mailing list commits@celix.apache.org Received: (qmail 12107 invoked by uid 99); 18 Nov 2015 12:23:30 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 18 Nov 2015 12:23:30 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 43A8EDFBA1; Wed, 18 Nov 2015 12:23:30 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: bpetri@apache.org To: commits@celix.apache.org Message-Id: <2ac3cdfc5d98481e87c6cd31d0edbdea@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: celix git commit: CELIX-190: fix memory leak when removing service Date: Wed, 18 Nov 2015 12:23:30 +0000 (UTC) Repository: celix Updated Branches: refs/heads/develop 4776c571e -> fdeee30ee CELIX-190: fix memory leak when removing service Project: http://git-wip-us.apache.org/repos/asf/celix/repo Commit: http://git-wip-us.apache.org/repos/asf/celix/commit/fdeee30e Tree: http://git-wip-us.apache.org/repos/asf/celix/tree/fdeee30e Diff: http://git-wip-us.apache.org/repos/asf/celix/diff/fdeee30e Branch: refs/heads/develop Commit: fdeee30ee34a27ad5a617b1041606afd659e1825 Parents: 4776c57 Author: Bjoern Petri Authored: Wed Nov 18 13:23:06 2015 +0100 Committer: Bjoern Petri Committed: Wed Nov 18 13:23:06 2015 +0100 ---------------------------------------------------------------------- .../private/src/remote_service_admin_impl.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/celix/blob/fdeee30e/remote_services/remote_service_admin_http/private/src/remote_service_admin_impl.c ---------------------------------------------------------------------- diff --git a/remote_services/remote_service_admin_http/private/src/remote_service_admin_impl.c b/remote_services/remote_service_admin_http/private/src/remote_service_admin_impl.c index ee50c83..c6e9353 100644 --- a/remote_services/remote_service_admin_http/private/src/remote_service_admin_impl.c +++ b/remote_services/remote_service_admin_http/private/src/remote_service_admin_impl.c @@ -465,7 +465,11 @@ celix_status_t remoteServiceAdmin_removeExportedService(export_registration_pt r celixThreadMutex_lock(&admin->exportedServicesLock); - hashMap_remove(admin->exportedServices, registration->reference); + array_list_pt registrations = (array_list_pt) hashMap_remove(admin->exportedServices, registration->reference); + + if (registrations != NULL) { + arrayList_destroy(registrations); + } celixThreadMutex_unlock(&admin->exportedServicesLock);