Skip to content

go to definition panic (windows, wsl) #1885

@43081j

Description

@43081j

Stack trace

[ERROR][2025-10-15 21:08:49] ...p/_transport.lua:36	"rpc"	"tsgo"	"stderr"	"panic: runtime error: invalid memory address or nil pointer dereference [recovered, repanicked]
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0xa0ce16]

goroutine 258 [running]:
github.com/microsoft/typescript-go/internal/project.(*Snapshot).Clone.func1()
	github.com/microsoft/typescript-go/internal/project/snapshot.go:154 +0x7d
panic({0xb40dc0?, 0x1489090?})
	runtime/panic.go:783 +0x132
sync/atomic.(*Int32).Add(...)
	sync/atomic/type.go:94
sync.(*RWMutex).RLock(...)
	sync/rwmutex.go:72
github.com/microsoft/typescript-go/internal/project.(*WatchedFiles[...]).Clone(0xc0035a83c0, {{0xc004555110?, 0xc000181798?, 0xc00015b100?}, 0x0?})
	github.com/microsoft/typescript-go/internal/project/watch.go:121 +0x56
github.com/microsoft/typescript-go/internal/project.(*projectCollectionBuilder).DidUpdateATAState.(*projectCollectionBuilder).DidUpdateATAState.func1.func3(0xc0035a4620)
	github.com/microsoft/typescript-go/internal/project/projectcollectionbuilder.go:353 +0x11b
github.com/microsoft/typescript-go/internal/project/dirty.(*Box[...]).Change(0xc000332000?, 0xc000181870?)
	github.com/microsoft/typescript-go/internal/project/dirty/box.go:41 +0x6b
github.com/microsoft/typescript-go/internal/project/dirty.(*Box[...]).ChangeIf(0xea7fa0, 0xc0001818b8, 0xc000181870?)
	github.com/microsoft/typescript-go/internal/project/dirty/box.go:46 +0x45
github.com/microsoft/typescript-go/internal/project.(*projectCollectionBuilder).DidUpdateATAState.func1(...)
	github.com/microsoft/typescript-go/internal/project/projectcollectionbuilder.go:331
github.com/microsoft/typescript-go/internal/project.(*projectCollectionBuilder).DidUpdateATAState(0xc003572380, 0xd282d8?, 0xc003570e10)
	github.com/microsoft/typescript-go/internal/project/projectcollectionbuilder.go:363 +0x1b2
github.com/microsoft/typescript-go/internal/project.(*Snapshot).Clone(0xc000227570, {0xe9d0f0, 0xc003570d70}, {0x3, {{0x0, 0x0}, 0x0, {0x0}, {0x0}, {0x0}}, ...}, ...)
	github.com/microsoft/typescript-go/internal/project/snapshot.go:205 +0x67d
github.com/microsoft/typescript-go/internal/project.(*Session).UpdateSnapshot(0xc00036c000, {0xe9d0f0, 0xc003570d70}, 0xc00012e540, {0x3, {{0x0, 0x0}, 0x0, {0x0}, {0x0}, ...}, ...})
	github.com/microsoft/typescript-go/internal/project/session.go:382 +0xb3
github.com/microsoft/typescript-go/internal/project.(*Session).GetLanguageService(0xc00036c000, {0xe9d0f0, 0xc003570d70}, {0xc00088c000, 0x99})
	github.com/microsoft/typescript-go/internal/project/session.go:349 +0x338
github.com/microsoft/typescript-go/internal/lsp.init.func1.registerLanguageServiceDocumentRequestHandler[...].13({0xe9d0f0, 0xc003570d70}, 0xc0022e80f0"

Steps to reproduce

  1. go to definition twice (generally the first time it works, then no more)

I'm pretty sure this is happening for almost every operation for me. completions, go to def, whatever - it'll cause this panic.

I have @latest and im using nvim, but i've always experienced this on windows and only got around to opening an issue now.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions