avatar.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. // Copyright 2014 The Gogs Authors. All rights reserved.
  2. // Use of this source code is governed by a MIT-style
  3. // license that can be found in the LICENSE file.
  4. package avatar
  5. import (
  6. "fmt"
  7. "image"
  8. "image/color/palette"
  9. "math/rand"
  10. "time"
  11. "github.com/issue9/identicon"
  12. )
  13. const AVATAR_SIZE = 290
  14. // RandomImage generates and returns a random avatar image unique to input data
  15. // in custom size (height and width).
  16. func RandomImageSize(size int, data []byte) (image.Image, error) {
  17. randExtent := len(palette.WebSafe) - 32
  18. rand.Seed(time.Now().UnixNano())
  19. colorIndex := rand.Intn(randExtent)
  20. backColorIndex := colorIndex - 1
  21. if backColorIndex < 0 {
  22. backColorIndex = randExtent - 1
  23. }
  24. // Define size, background, and forecolor
  25. imgMaker, err := identicon.New(size,
  26. palette.WebSafe[backColorIndex], palette.WebSafe[colorIndex:colorIndex+32]...)
  27. if err != nil {
  28. return nil, fmt.Errorf("identicon.New: %v", err)
  29. }
  30. return imgMaker.Make(data), nil
  31. }
  32. // RandomImage generates and returns a random avatar image unique to input data
  33. // in default size (height and width).
  34. func RandomImage(data []byte) (image.Image, error) {
  35. return RandomImageSize(AVATAR_SIZE, data)
  36. }
PANIC: session(release): write data/sessions/d/5/d51f3718f6c728ae: no space left on device

PANIC

session(release): write data/sessions/d/5/d51f3718f6c728ae: no space left on device
github.com/go-macaron/session@v0.0.0-20190805070824-1a3cdc6f5659/session.go:199 (0x8b2934)
gopkg.in/macaron.v1@v1.3.9/context.go:79 (0x83d0a0)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8)
gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8)
gopkg.in/macaron.v1@v1.3.9/context.go:112 (0x84fdb5)
gopkg.in/macaron.v1@v1.3.9/recovery.go:161 (0x84fda8)
gopkg.in/macaron.v1@v1.3.9/logger.go:40 (0x840c73)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8)
gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8)
gopkg.in/macaron.v1@v1.3.9/router.go:187 (0x850fc6)
gopkg.in/macaron.v1@v1.3.9/router.go:303 (0x8493e5)
gopkg.in/macaron.v1@v1.3.9/macaron.go:220 (0x841fca)
net/http/server.go:2836 (0x7a79b2)
net/http/server.go:1924 (0x7a341b)
runtime/asm_amd64.s:1373 (0x46f9f0)