frps: fix sometimes no response when frpc login to frps, see #142

This commit is contained in:
fatedier
2016-12-27 01:19:19 +08:00
parent 04a4591caa
commit 37470c26f0
4 changed files with 14 additions and 6 deletions

View File

@@ -270,6 +270,17 @@ func (p *ProxyServer) Start(c *conn.Conn) (err error) {
}
func (p *ProxyServer) Close() {
p.Release()
// if the proxy created by PrivilegeMode, delete it when closed
if p.PrivilegeMode {
// NOTE: this will take the global ProxyServerMap's lock
// if we only want to release resources, use Release() instead
DeleteProxy(p.Name)
}
}
func (p *ProxyServer) Release() {
p.Lock()
defer p.Unlock()
@@ -296,10 +307,6 @@ func (p *ProxyServer) Close() {
}
}
metric.SetStatus(p.Name, p.Status)
// if the proxy created by PrivilegeMode, delete it when closed
if p.PrivilegeMode {
DeleteProxy(p.Name)
}
}
func (p *ProxyServer) WaitUserConn() (closeFlag bool) {