Fix minor bugs
This commit is contained in:
@@ -30,8 +30,8 @@ func setup(baseDir *C.char, workingDir *C.char, tempDir *C.char, statusPort C.lo
|
||||
}
|
||||
|
||||
//export parse
|
||||
func parse(path *C.char) *C.char {
|
||||
err := shared.ParseConfig(C.GoString(path))
|
||||
func parse(path *C.char, tempPath *C.char, debug bool) *C.char {
|
||||
err := shared.ParseConfig(C.GoString(path), C.GoString(tempPath), debug)
|
||||
if err != nil {
|
||||
return C.CString(err.Error())
|
||||
}
|
||||
|
||||
@@ -29,5 +29,5 @@ func stopAndAlert(alert string, err error) error {
|
||||
|
||||
msg, _ := json.Marshal(StatusMessage{Status: status, Alert: &alert, Message: &message})
|
||||
bridge.SendStringToPort(statusPropagationPort, string(msg))
|
||||
return err
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -9,8 +9,8 @@ import (
|
||||
"github.com/sagernet/sing-box/option"
|
||||
)
|
||||
|
||||
func Parse(path string) error {
|
||||
return shared.ParseConfig(path)
|
||||
func Parse(path string, tempPath string, debug bool) error {
|
||||
return shared.ParseConfig(path, tempPath, debug)
|
||||
}
|
||||
|
||||
func BuildConfig(path string, configOptionsJson string) (string, error) {
|
||||
|
||||
@@ -15,8 +15,8 @@ import (
|
||||
//go:embed config.json.template
|
||||
var configByte []byte
|
||||
|
||||
func ParseConfig(path string) error {
|
||||
content, err := os.ReadFile(path)
|
||||
func ParseConfig(path string, tempPath string, debug bool) error {
|
||||
content, err := os.ReadFile(tempPath)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -28,7 +28,6 @@ func ParseConfig(path string) error {
|
||||
config = content
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
err = libbox.CheckConfig(string(config))
|
||||
if err != nil {
|
||||
@@ -40,6 +39,7 @@ func ParseConfig(path string) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func parseV2rayFormat(content []byte) ([]byte, error) {
|
||||
singconf, err := ray2sing.Ray2Singbox(string(content))
|
||||
if err != nil {
|
||||
@@ -48,6 +48,7 @@ func parseV2rayFormat(content []byte) ([]byte, error) {
|
||||
}
|
||||
return []byte(singconf), nil
|
||||
}
|
||||
|
||||
func parseClash(content []byte) ([]byte, error) {
|
||||
clashConfig := clash.Clash{}
|
||||
err := yaml.Unmarshal(content, &clashConfig)
|
||||
|
||||
Reference in New Issue
Block a user