mirror of
https://github.com/3proxy/3proxy.git
synced 2026-11-05 09:25:49 +08:00
Event loops: a relayed client released once
The ends of a client relayed as callbacks called releaseparam() and then freeparam(), which releases it again: the connection limits' slot was given back twice (see the commit before). freeparam() alone. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
e0a05f343f
commit
97ab683654
@ -888,14 +888,12 @@ static void cbmapfinish(void *arg){
|
||||
param->res = (res == -2)? 21 : res;
|
||||
param->maptail = NULL;
|
||||
dolog(param, NULL);
|
||||
releaseparam(param);
|
||||
freeparam(param);
|
||||
return;
|
||||
}
|
||||
if(res == -2) res = sockmap(param, timeo, usesplice);
|
||||
param->res = res;
|
||||
if(param->maptail) param->maptail(param, param->maptaildata);
|
||||
releaseparam(param);
|
||||
freeparam(param);
|
||||
}
|
||||
|
||||
@ -923,7 +921,6 @@ static void cbmapdone(struct cbmap *m){
|
||||
free(m);
|
||||
param->maptail = NULL;
|
||||
dolog(param, NULL);
|
||||
releaseparam(param);
|
||||
freeparam(param);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user