-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Closed
Description
Problem statement
I get following panic when trying to generate a spec from go-code on the latest master (commit 14fb201), but the issue occurs on older versions as well (i.e. 0.26.1)
The stacktrace for 14fb201 is:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x1a8 pc=0xab7050]
goroutine 1 [running]:
github.com/go-swagger/go-swagger/codescan.(*schemaBuilder).buildFromStruct(0x8, 0xc02569bc00, 0xc022f20480, 0x0, 0xc03d2a2818)
/home/dirk/repo/go-swagger2/codescan/schema.go:697 +0x390
github.com/go-swagger/go-swagger/codescan.(*schemaBuilder).buildFromType(0xc03d2a2da8, {0xd43880, 0xc022f20480}, {0xd5a660, 0xc03c3ecc60})
/home/dirk/repo/go-swagger2/codescan/schema.go:246 +0x558
github.com/go-swagger/go-swagger/codescan.(*parameterBuilder).buildFromField(0xc03d2a3c08, 0xc00170e8c0, {0xd43880, 0xc022f20480}, {0xd5a660, 0xc03c3ecc60}, 0x42224)
/home/dirk/repo/go-swagger2/codescan/parameters.go:230 +0x570
github.com/go-swagger/go-swagger/codescan.(*parameterBuilder).buildFromStruct(0xc021de05a0, 0xc0256b7180, 0xc022f20360, 0xc0397ee460, 0xc00ea7fee0)
/home/dirk/repo/go-swagger2/codescan/parameters.go:364 +0xadb
github.com/go-swagger/go-swagger/codescan.(*parameterBuilder).buildFromType(0xc001055c08, {0xd437e0, 0xc024bec180}, 0x11, 0x0)
/home/dirk/repo/go-swagger2/codescan/parameters.go:209 +0x1c5
github.com/go-swagger/go-swagger/codescan.(*parameterBuilder).Build(0xc03d2a3c08, 0xc001055c30)
/home/dirk/repo/go-swagger2/codescan/parameters.go:192 +0x212
github.com/go-swagger/go-swagger/codescan.(*specBuilder).buildParameters(0xc03c3e3360)
/home/dirk/repo/go-swagger2/codescan/spec.go:185 +0xb1
github.com/go-swagger/go-swagger/codescan.(*specBuilder).Build(0xc03c3e3360)
/home/dirk/repo/go-swagger2/codescan/spec.go:53 +0x38
github.com/go-swagger/go-swagger/codescan.Run(0xc001055cb8)
/home/dirk/repo/go-swagger2/codescan/application.go:77 +0x4e
github.com/go-swagger/go-swagger/cmd/swagger/commands/generate.(*SpecFile).Execute(0xc0000bac60, {0xc000320060, 0xc0000bac60, 0xc})
/home/dirk/repo/go-swagger2/cmd/swagger/commands/generate/spec_go111.go:57 +0x1c5
github.com/jessevdk/go-flags.(*Parser).ParseArgs(0xc0001dc8c0, {0xc000032080, 0x8, 0x6})
/home/dirk/go/pkg/mod/github.com/jessevdk/go-flags@v1.5.0/parser.go:335 +0x94e
github.com/jessevdk/go-flags.(*Parser).Parse(...)
/home/dirk/go/pkg/mod/github.com/jessevdk/go-flags@v1.5.0/parser.go:191
main.main()
/home/dirk/repo/go-swagger2/cmd/swagger/swagger.go:140 +0x98c
Swagger specification
unfortunately the go-code is proprietary and I could not reduce the problem to something shareable.
Steps to reproduce
Environment
swagger version: latest
go version: go.1.17.5
OS: Ubuntu 21.10
Metadata
Metadata
Assignees
Labels
No labels