summaryrefslogtreecommitdiff
path: root/cpp/src/IcePack/Activator.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2005-02-04 13:15:54 +0000
committerBenoit Foucher <benoit@zeroc.com>2005-02-04 13:15:54 +0000
commit92d00865903d98a5420329ea36283990d6e01104 (patch)
treef0ecf4b89d61e230d0bd2e7dc6daf11cc6afe772 /cpp/src/IcePack/Activator.cpp
parentAdded demo.dsw and removed demo.sln. (diff)
downloadice-92d00865903d98a5420329ea36283990d6e01104.tar.bz2
ice-92d00865903d98a5420329ea36283990d6e01104.tar.xz
ice-92d00865903d98a5420329ea36283990d6e01104.zip
Fixed memory leak and race condition in adapter activation.
Diffstat (limited to 'cpp/src/IcePack/Activator.cpp')
-rw-r--r--cpp/src/IcePack/Activator.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/cpp/src/IcePack/Activator.cpp b/cpp/src/IcePack/Activator.cpp
index 83286edf3b7..c040500d9c7 100644
--- a/cpp/src/IcePack/Activator.cpp
+++ b/cpp/src/IcePack/Activator.cpp
@@ -703,6 +703,12 @@ Activator::activate(const string& name,
{
close(fds[1]);
+ for(i = 0; argv[i]; i++)
+ {
+ free(argv[i]);
+ }
+ free(argv);
+
for(i = 0; i < envCount; ++i)
{
free(envArray[i]);