Changeset: e4c8a2dd89ac for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e4c8a2dd89ac Modified Files: tools/merovingian/daemon/peering.c Branch: Oct2014 Log Message:
Resource leak. diffs (47 lines): diff --git a/tools/merovingian/daemon/peering.c b/tools/merovingian/daemon/peering.c --- a/tools/merovingian/daemon/peering.c +++ b/tools/merovingian/daemon/peering.c @@ -77,6 +77,8 @@ peeringServerThread(void *d) (unsigned int)getConfNum(_mero_props, "port")); if (write(s, data, strlen(data)) == -1) { close(s); + if (masquerade) + free(masquerade); return; } } else if (len > 0 && strcmp(data, "proxy") == 0) { @@ -86,6 +88,8 @@ peeringServerThread(void *d) (unsigned int)getConfNum(_mero_props, "port")); if (write(s, data, strlen(data)) == -1) { close(s); + if (masquerade) + free(masquerade); return; } } else if (len > 0 && strcmp(data, "direct") == 0) { @@ -93,6 +97,8 @@ peeringServerThread(void *d) snprintf(data, sizeof(data), "direct\n"); if (write(s, data, strlen(data)) == -1) { close(s); + if (masquerade) + free(masquerade); return; } } else { @@ -104,12 +110,16 @@ peeringServerThread(void *d) * condition to keep fortification warnings off */ } close(s); + if (masquerade) + free(masquerade); return; } if (pipe(discreader) == -1) { /* bla error */ close(s); + if (masquerade) + free(masquerade); return; } registerMessageTap(discreader[0]); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list