checkUpdateBtn fix bug (#6)

Co-authored-by: NearlOfficial <kamiya814767377@gmail.com>
This commit is contained in:
NearlOfficial
2023-03-17 18:38:45 +08:00
committed by GitHub
parent 18df9ff64c
commit cb092366f3
5 changed files with 22 additions and 10 deletions

View File

@@ -8,6 +8,6 @@ type LoggerFactory struct {
LiveClients map[string]adapter.LiveClientCtor LiveClients map[string]adapter.LiveClientCtor
} }
func (f *LoggerFactory) NewLogrus(filename string, redirectStderr bool) adapter.ILogger { func (f *LoggerFactory) NewLogrus(filename string, redirectStderr bool, maxSize int64) adapter.ILogger {
return NewLogrusLogger(filename, redirectStderr) return NewLogrusLogger(filename, redirectStderr, maxSize)
} }

View File

@@ -29,7 +29,7 @@ func (l *LogrusLogger) SetLogLevel(level adapter.LogLevel) {
} }
} }
func NewLogrusLogger(fileName string, redirectStderr bool) *LogrusLogger { func NewLogrusLogger(fileName string, redirectStderr bool, maxSize int64) *LogrusLogger {
l := logrus.New() l := logrus.New()
l.SetFormatter( l.SetFormatter(
&nested.Formatter{ &nested.Formatter{
@@ -40,7 +40,14 @@ func NewLogrusLogger(fileName string, redirectStderr bool) *LogrusLogger {
var file *os.File var file *os.File
var err error var err error
if fileName != "" { if fileName != "" {
file, err = os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666) fi, err := os.Stat(fileName)
if err != nil {
file, err = os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY, 0666)
} else if fi.Size() > maxSize*1024*1024 {
file, err = os.OpenFile(fileName, os.O_TRUNC|os.O_WRONLY, 0666)
} else {
file, err = os.OpenFile(fileName, os.O_WRONLY|os.O_APPEND, 0666)
}
if err == nil { if err == nil {
l.Out = io.MultiWriter(file, os.Stdout) l.Out = io.MultiWriter(file, os.Stdout)
} else { } else {

View File

@@ -94,11 +94,13 @@ func (b *bascicConfig) CreatePanel() fyne.CanvasObject {
showDialogIfError(err) showDialogIfError(err)
return return
} }
dialog.ShowCustom( if API.App().LatestVersion().Version > API.App().Version().Version {
i18n.T("gui.update.new_version"), dialog.ShowCustom(
"OK", i18n.T("gui.update.new_version"),
widget.NewRichTextFromMarkdown(API.App().LatestVersion().Info), "OK",
MainWindow) widget.NewRichTextFromMarkdown(API.App().LatestVersion().Info),
MainWindow)
}
}) })
b.panel = container.NewVBox(randomPlaylist, outputDevice, skipPlaylist, skipWhenErr, checkUpdateBox, checkUpdateBtn) b.panel = container.NewVBox(randomPlaylist, outputDevice, skipPlaylist, skipWhenErr, checkUpdateBox, checkUpdateBtn)
return b.panel return b.panel

View File

@@ -104,6 +104,7 @@ func checkUpdate() {
l().Info("checking updates...") l().Info("checking updates...")
err := API.App().CheckUpdate() err := API.App().CheckUpdate()
if err != nil { if err != nil {
showDialogIfError(err)
l().Warnf("check update failed", err) l().Warnf("check update failed", err)
return return
} }

View File

@@ -24,6 +24,7 @@ type _LogConfig struct {
Path string Path string
Level adapter.LogLevel Level adapter.LogLevel
RedirectStderr bool RedirectStderr bool
MaxSize int64
} }
func (c *_LogConfig) Name() string { func (c *_LogConfig) Name() string {
@@ -34,6 +35,7 @@ var Log = &_LogConfig{
Path: "./log.txt", Path: "./log.txt",
Level: adapter.LogLevelInfo, Level: adapter.LogLevelInfo,
RedirectStderr: false, // this should be true if it is in production mode. RedirectStderr: false, // this should be true if it is in production mode.
MaxSize: 5,
} }
func createController(log adapter.ILogger) adapter.IControlBridge { func createController(log adapter.ILogger) adapter.IControlBridge {
@@ -59,7 +61,7 @@ func main() {
config.LoadFromFile(config.ConfigPath) config.LoadFromFile(config.ConfigPath)
config.LoadConfig(Log) config.LoadConfig(Log)
i18n.LoadLanguage(config.General.Language) i18n.LoadLanguage(config.General.Language)
log := adapters.Logger.NewLogrus(Log.Path, Log.RedirectStderr) log := adapters.Logger.NewLogrus(Log.Path, Log.RedirectStderr, Log.MaxSize)
log.SetLogLevel(Log.Level) log.SetLogLevel(Log.Level)
log.Info("================Program Start================") log.Info("================Program Start================")
log.Infof("================Current Version: %s================", config.Version) log.Infof("================Current Version: %s================", config.Version)