diff --git a/go.mod b/go.mod index 3e3cc6fde5d9405caf097d0d113de8a88e748519..d395498736584a2761e22aa8c88e23ea0c0c6819 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.16 require ( github.com/bwmarrin/snowflake v0.3.0 github.com/fsnotify/fsnotify v1.4.9 - github.com/gin-gonic/gin v1.7.2 + github.com/gin-gonic/gin v1.7.4 github.com/gopherjs/gopherjs v0.0.0-20210901121439-eee08aaf2717 github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 github.com/sirupsen/logrus v1.8.1 diff --git a/go.sum b/go.sum index 4a5bc0992147692605a6220c0e5ff8fa9bf8db86..75642a416534a19a50a964d170ef48988ddcf1e2 100644 --- a/go.sum +++ b/go.sum @@ -50,6 +50,8 @@ github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm github.com/gin-gonic/gin v1.6.3/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M= github.com/gin-gonic/gin v1.7.2 h1:Tg03T9yM2xa8j6I3Z3oqLaQRSmKvxPd6g/2HJ6zICFA= github.com/gin-gonic/gin v1.7.2/go.mod h1:jD2toBW3GZUr5UMcdrwQA10I7RuaFOl/SGeDjXkfUtY= +github.com/gin-gonic/gin v1.7.4 h1:QmUZXrvJ9qZ3GfWvQ+2wnW/1ePrTEJqPKMYEU3lD/DM= +github.com/gin-gonic/gin v1.7.4/go.mod h1:jD2toBW3GZUr5UMcdrwQA10I7RuaFOl/SGeDjXkfUtY= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= diff --git a/recover.go b/recover.go index 7be6fc63b904e9dac57bab9ab3ad6ef8597010c3..d84c79ab123744422dc76f017c3a7fff1b3a6e2f 100644 --- a/recover.go +++ b/recover.go @@ -4,6 +4,7 @@ import ( "github.com/gin-gonic/gin" log "github.com/sirupsen/logrus" "net/http" + "runtime/debug" ) func recovery() gin.HandlerFunc { @@ -13,8 +14,9 @@ func recovery() gin.HandlerFunc { if p != nil { log.Errorf("Panic occurred in web server, %s", p) context.JSON(http.StatusInternalServerError, gin.H{ - "error": p, + "error": "panic", }) + log.Error(string(debug.Stack())) } }() context.Next() diff --git a/store/image.go b/store/image.go index 22b76b5497ce99a6cb2c66b4afb50de590c026de..ddf5a822a6915f60452ffc829cd93f176108a582 100644 --- a/store/image.go +++ b/store/image.go @@ -310,7 +310,7 @@ func (s *Store) ImageUpdate(hash, source, parent, commentary, commentaryTranslat info.Source = source msg += "source" } - if parent != "\000" { + if parent != "\000" && parent != "" { if p := s.ImageSnowflake(parent); p.Snowflake == parent { s.getLock(p.Hash).Lock() defer s.getLock(p.Hash).Unlock()