package mahonia // Converters for Big 5 encoding. import ( "sync" ) func init() { RegisterCharset(&Charset{ Name: "Big5", Aliases: []string{"csBig5"}, NewDecoder: func() Decoder { return decodeBig5Rune }, NewEncoder: func() Encoder { big5Once.Do(reverseBig5Table) return encodeBig5Rune }, }) } func decodeBig5Rune(p []byte) (r rune, size int, status Status) { if len(p) == 0 { status = NO_ROOM return } b := p[0] if b < 128 { return rune(b), 1, SUCCESS } if len(p) < 2 { status = NO_ROOM return } c := int(p[0])<<8 + int(p[1]) c = int(big5ToUnicode[c]) if c > 0 { return rune(c), 2, SUCCESS } return 0xfffd, 1, INVALID_CHAR } func encodeBig5Rune(p []byte, r rune) (size int, status Status) { if len(p) == 0 { status = NO_ROOM return } if r < 128 { p[0] = byte(r) return 1, SUCCESS } if len(p) < 2 { status = NO_ROOM return } if r < 0x10000 { c := unicodeToBig5[r] if c > 0 { p[0] = byte(c >> 8) p[1] = byte(c) return 2, SUCCESS } } p[0] = '?' return 1, INVALID_CHAR } var big5Once sync.Once var unicodeToBig5 []uint16 func reverseBig5Table() { unicodeToBig5 = make([]uint16, 65536) for big5, unicode := range big5ToUnicode { if unicode > 0 { unicodeToBig5[unicode] = uint16(big5) } } }
session(release): write data/sessions/e/8/e89f8f33255cf8ec: 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)