X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=command.c;h=d08a71818cfb437c5cd6c02a13d6a7c2f3e56893;hb=46f2f102fa22ddffe515546e7db21cf208db0d90;hp=b59fae7af154d5545999ae6b79757c06b7c118ee;hpb=178acbc7280b6d4464bf0314ca348f9105366f23;p=paraslash.git diff --git a/command.c b/command.c index b59fae7a..d08a7181 100644 --- a/command.c +++ b/command.c @@ -787,12 +787,14 @@ __noreturn void handle_connect(int fd, const char *peername) /* valid command and sufficient perms */ alarm(0); argc = split_args(command, &argv, "\n"); - mutex_lock(mmd_mutex); - mmd->num_commands++; - mutex_unlock(mmd_mutex); PARA_NOTICE_LOG("calling com_%s() for %s@%s\n", cmd->name, u->name, peername); ret = cmd->handler(fd, argc, argv); + mutex_lock(mmd_mutex); + mmd->num_commands++; + free(mmd->afd.afhi.info_string); + free(mmd->afd.afhi.chunk_table); + mutex_unlock(mmd_mutex); if (ret >= 0) goto out; err_out: