Skip to content

Panic when using image code completion inside a quoted string #486

@rcjsuen

Description

@rcjsuen
services:
  test:
    image: ' '
{
    "textDocument": {
        "uri": "file:///tmp/compose.yaml"
    },
    "position": {
        "line": 2,
        "character": 13
    },
    "context": {
        "triggerKind": 1
    }
}
goroutine 53 [running]:
runtime/debug.Stack()
	/opt/hostedtoolcache/go/1.25.3/x64/src/runtime/debug/stack.go:26 +0x64
runtime/debug.PrintStack()
	/opt/hostedtoolcache/go/1.25.3/x64/src/runtime/debug/stack.go:18 +0x1c
github.com/docker/docker-language-server/internal/pkg/server.(*Server).handleRecovered(0x140002a00c0, {0x1400013bd88, 0x17}, {0x105af7620, 0x1400013be78})
	/home/runner/work/docker-language-server/docker-language-server/internal/pkg/server/server.go:207 +0x44
github.com/docker/docker-language-server/internal/pkg/server.NewServer.func1({0x1400013bd88?, 0x14000751487?}, {0x105af7620?, 0x1400013be78?})
	/home/runner/work/docker-language-server/docker-language-server/internal/pkg/server/server.go:135 +0x40
github.com/docker/docker-language-server/internal/tliron/glsp/protocol.(*Handler).Handle.func1()
	/home/runner/work/docker-language-server/docker-language-server/internal/tliron/glsp/protocol/handler.go:100 +0x64
panic({0x105af7620?, 0x1400013be78?})
	/opt/hostedtoolcache/go/1.25.3/x64/src/runtime/panic.go:783 +0x120
github.com/docker/docker-language-server/internal/compose.serviceImageCompletionItems({0x105b9b7c0, 0x14000402240}, {0x140002e31b8, 0x3, 0xc?}, {0x0, 0x0})
	/home/runner/work/docker-language-server/docker-language-server/internal/compose/completion.go:587 +0x3a4
github.com/docker/docker-language-server/internal/compose.Completion({0x10648c100?, 0x105b24e20?}, 0x1400049e0f0, 0x14000551110, 0x14000402230, {0x105bb18c0, 0x140002c1400})
	/home/runner/work/docker-language-server/docker-language-server/internal/compose/completion.go:246 +0x6ec
github.com/docker/docker-language-server/internal/pkg/server.(*Server).TextDocumentCompletion(0x140002a00c0, 0x140004a0000, 0x1400049e0f0)
	/home/runner/work/docker-language-server/docker-language-server/internal/pkg/server/completion.go:22 +0x210
github.com/docker/docker-language-server/internal/tliron/glsp/protocol.(*Handler).Handle(0x140000f6908, 0x140004a0000)
	/home/runner/work/docker-language-server/docker-language-server/internal/tliron/glsp/protocol/handler.go:388 +0x1240
github.com/docker/docker-language-server/internal/tliron/glsp/server.(*Server).handle(0x14000206120, {0x105ba8308, 0x140002e01c0}, 0x140000e1560, 0x1400077fda0)
	/home/runner/work/docker-language-server/docker-language-server/internal/tliron/glsp/server/handler.go:69 +0x1ec
github.com/sourcegraph/jsonrpc2.(*HandlerWithErrorConfigurer).Handle(0x14000402430, {0x105ba8308, 0x140002e01c0}, 0x140000e1560, 0x1400077fda0)
	/home/runner/go/pkg/mod/github.com/sourcegraph/jsonrpc2@v0.2.0/handler_with_error.go:21 +0x4c
github.com/docker/docker-language-server/internal/tliron/glsp/server.(*AsynchronousRequestHandler).Handle(0x14000402440?, {0x105ba8308?, 0x140002e01c0?}, 0x140000e1560?, 0x1400077fda0?)
	/home/runner/work/docker-language-server/docker-language-server/internal/tliron/glsp/server/handler.go:29 +0x8c
github.com/sourcegraph/jsonrpc2.(*Conn).readMessages(0x140000e1560, {0x105ba8308, 0x140002e01c0})
	/home/runner/go/pkg/mod/github.com/sourcegraph/jsonrpc2@v0.2.0/conn.go:205 +0x284
created by github.com/sourcegraph/jsonrpc2.NewConn in goroutine 1
	/home/runner/go/pkg/mod/github.com/sourcegraph/jsonrpc2@v0.2.0/conn.go:62 +0x1b0

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions