move ConfigLoad into Start function when running as a service

This commit is contained in:
Alison Winters 2019-10-27 19:55:47 +08:00 committed by Frank Denis
parent 4eea03c9a1
commit 9aeec3478f
2 changed files with 13 additions and 11 deletions

View File

@ -211,7 +211,7 @@ func findConfigFile(configFile *string) (string, error) {
return path.Join(pwd, *configFile), nil
}
func ConfigLoad(proxy *Proxy, svcFlag *string) error {
func ConfigLoad(proxy *Proxy) error {
version := flag.Bool("version", false, "print current proxy version")
resolve := flag.String("resolve", "", "resolve a name using system libraries")
list := flag.Bool("list", false, "print the list of available resolvers for the enabled filters")
@ -225,9 +225,6 @@ func ConfigLoad(proxy *Proxy, svcFlag *string) error {
flag.Parse()
if *svcFlag == "stop" || *svcFlag == "uninstall" {
return nil
}
if *version {
fmt.Println(AppVersion)
os.Exit(0)

View File

@ -56,9 +56,6 @@ func main() {
}
app.proxy = NewProxy()
_ = ServiceManagerStartNotify()
if err := ConfigLoad(app.proxy, svcFlag); err != nil {
dlog.Fatal(err)
}
if len(*svcFlag) != 0 {
if svc == nil {
dlog.Fatal("Built-in service installation is not supported on this platform")
@ -85,6 +82,9 @@ func main() {
dlog.Fatal(err)
}
} else {
if err := ConfigLoad(app.proxy); err != nil {
dlog.Fatal(err)
}
app.signalWatch()
app.appMain()
}
@ -93,10 +93,15 @@ func main() {
}
func (app *App) Start(service service.Service) error {
if err := app.proxy.InitPluginsGlobals(); err != nil {
dlog.Fatal(err)
}
go app.appMain()
go func() {
if err := ConfigLoad(app.proxy); err != nil {
dlog.Fatal(err)
}
if err := app.proxy.InitPluginsGlobals(); err != nil {
dlog.Fatal(err)
}
app.appMain()
}()
return nil
}