diff options
author | dimitri staessens <dimitri.staessens@ugent.be> | 2017-03-28 09:18:22 +0000 |
---|---|---|
committer | Sander Vrijders <sander.vrijders@ugent.be> | 2017-03-28 09:18:22 +0000 |
commit | dd8a29875da101b0288a925fd259440b644e87eb (patch) | |
tree | 834fd7716249fa5e92632bb8a2ca5e1bf22c0745 /src/ipcpd | |
parent | ba13c05b8b61365ff9e969c15affd2e1d52b76ed (diff) | |
parent | 568803fce010565f8688a2a48614da083a264cf8 (diff) | |
download | ouroboros-dd8a29875da101b0288a925fd259440b644e87eb.tar.gz ouroboros-dd8a29875da101b0288a925fd259440b644e87eb.zip |
Merged in dstaesse/ouroboros/be-bugfixing (pull request #427)
Be bugfixing
Diffstat (limited to 'src/ipcpd')
-rw-r--r-- | src/ipcpd/normal/fmgr.c | 4 | ||||
-rw-r--r-- | src/ipcpd/normal/frct.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/ipcpd/normal/fmgr.c b/src/ipcpd/normal/fmgr.c index 5a1bd842..6d1694ab 100644 --- a/src/ipcpd/normal/fmgr.c +++ b/src/ipcpd/normal/fmgr.c @@ -579,6 +579,7 @@ int fmgr_np1_alloc_resp(int fd, ipcp_flow_get_qoscube(fd, &cube); if (frct_i_accept(fmgr.np1_fd_to_cep_id[fd], &buf, cube)) { pthread_rwlock_unlock(&fmgr.np1_flows_lock); + free(buf.data); return -1; } flow_set_add(fmgr.np1_set[cube], fd); @@ -586,6 +587,8 @@ int fmgr_np1_alloc_resp(int fd, pthread_rwlock_unlock(&fmgr.np1_flows_lock); + free(buf.data); + return 0; } @@ -753,6 +756,7 @@ int fmgr_nm1_write_buf(struct pci * pci, return -1; } + free(buffer->data); free(buffer); return 0; } diff --git a/src/ipcpd/normal/frct.c b/src/ipcpd/normal/frct.c index 01bdb660..017d0d93 100644 --- a/src/ipcpd/normal/frct.c +++ b/src/ipcpd/normal/frct.c @@ -371,10 +371,11 @@ int frct_i_destroy(cep_id_t id, pci.qos_id = instance->cube; frct.instances[id] = NULL; - destroy_frct_i(instance); release_cep_id(instance->cep_id); + destroy_frct_i(instance); + pthread_mutex_unlock(&frct.instances_lock); if (buf != NULL && buf->data != NULL) |