wailsapp / wails

Create beautiful applications using Go
https://wails.io
MIT License
25.05k stars 1.2k forks source link

panic: runtime error: invalid memory address or nil pointer dereference [recovered] #3645

Closed leek-No1 closed 2 months ago

leek-No1 commented 2 months ago

Description

Hello, I created a project and got an error when starting it.

To Reproduce

Current environment

C:\Users\env\Desktop\code\go\myproject>go env
set GO111MODULE=
set GOARCH=arm64
set GOBIN=
set GOCACHE=C:\Users\env\AppData\Local\go-build
set GOENV=C:\Users\env\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=arm64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\env\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\env\go
set GOPRIVATE=
set GOPROXY=https://goproxy.cn,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLCHAIN=auto
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_arm64
set GOVCS=
set GOVERSION=go1.22.5
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=0
set GOMOD=C:\Users\env\Desktop\code\go\myproject\go.mod
set GOWORK=
set CGO_CFLAGS=-O2 -g
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-O2 -g
set CGO_FFLAGS=-O2 -g
set CGO_LDFLAGS=-O2 -g
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-fno-caret-diagnostics -Qunused-arguments -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=C:\Users\env\AppData\Local\Temp\go-build1457419311=/tmp/go-build -gno-record-gcc-switches

wails doctor

C:\Users\env\Desktop\code\go\myproject>wails doctor
DEB | Using go webview2loader
Wails CLI v2.5.0

 SUCCESS  Done.

# System

OS           | Windows 10 Home
Version      | 2009 (Build: 22631)
ID           | 23H2
Go Version   | go1.22.5
Platform     | windows
Architecture | arm64

# Wails

Version | v2.5.0

# Dependencies

Dependency | Package Name | Status    | Version
WebView2   | N/A          | Installed | 126.0.2592.113
Nodejs     | N/A          | Installed | 20.16.0
npm        | N/A          | Installed | 10.8.1
*upx       | N/A          | Available |
*nsis      | N/A          | Available |
* - Optional Dependency

# Diagnosis

Your system is ready for Wails development!
Optional package(s) installation details:
  - upx : Available at https://upx.github.io/
  - nsis : More info at https://wails.io/docs/guides/windows-installer/

 ♥   If Wails is useful to you or your company, please consider sponsoring the project:
https://github.com/sponsors/leaanthony

run

C:\Users\env\Desktop\code\go\myproject>wails dev
DEB | Using go webview2loader
Wails CLI v2.5.0

Executing: go mod tidy
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
        panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x0 pc=0x7ff6ad358c84]

goroutine 6 [running]:
go/types.(*Checker).handleBailout(0x400050a400, 0x4000861c38)
        C:/Program Files/Go/src/go/types/check.go:367 +0x9c
panic({0x7ff6adb59f00?, 0x7ff6ae81a3f0?})
        C:/Program Files/Go/src/runtime/panic.go:770 +0x124
go/types.(*StdSizes).Sizeof(0x0, {0x7ff6adfe1578, 0x7ff6ae827820})
        C:/Program Files/Go/src/go/types/sizes.go:228 +0x314
go/types.(*Config).sizeof(...)
        C:/Program Files/Go/src/go/types/sizes.go:333
go/types.representableConst.func1({0x7ff6adfe1578?, 0x7ff6ae827820?})
        C:/Program Files/Go/src/go/types/const.go:76 +0x9c
go/types.representableConst({0x7ff6adfe47c0, 0x40001cec48}, 0x400050a400, 0x7ff6ae827820, 0x400085de98)
        C:/Program Files/Go/src/go/types/const.go:92 +0x138
go/types.(*Checker).representation(0x400050a400, 0x400072e3c0, 0x7ff6ae827820)
        C:/Program Files/Go/src/go/types/const.go:256 +0x68
go/types.(*Checker).implicitTypeAndValue(0x400050a400, 0x400072e3c0, {0x7ff6adfe1578, 0x7ff6ae827820})
        C:/Program Files/Go/src/go/types/expr.go:375 +0x304
go/types.(*Checker).assignment(0x400050a400, 0x400072e3c0, {0x7ff6adfe1578, 0x7ff6ae827820}, {0x7ff6adc6a38c, 0xe})
        C:/Program Files/Go/src/go/types/assignments.go:52 +0x23c
go/types.(*Checker).exprInternal(0x400050a400, 0x0, 0x400072e3c0, {0x7ff6adfe29e0, 0x4000a21e80}, {0x0, 0x0})
        C:/Program Files/Go/src/go/types/expr.go:1175 +0x1dc8
go/types.(*Checker).rawExpr(0x400050a400, 0x0, 0x400072e3c0, {0x7ff6adfe29e0?, 0x4000a21e80?}, {0x0?, 0x0?}, 0x0)
        C:/Program Files/Go/src/go/types/expr.go:979 +0x12c
go/types.(*Checker).expr(0x400050a400, 0x4000065008?, 0x400072e3c0, {0x7ff6adfe29e0?, 0x4000a21e80?})
        C:/Program Files/Go/src/go/types/expr.go:1513 +0x38
go/types.(*Checker).unary(0x400050a400, 0x400072e3c0, 0x4000048d40)
        C:/Program Files/Go/src/go/types/expr.go:127 +0x44
go/types.(*Checker).exprInternal(0x400050a400, 0x0, 0x400072e3c0, {0x7ff6adfe3010, 0x4000048d40}, {0x0, 0x0})
        C:/Program Files/Go/src/go/types/expr.go:1406 +0x1328
go/types.(*Checker).rawExpr(0x400050a400, 0x0, 0x400072e3c0, {0x7ff6adfe3010?, 0x4000048d40?}, {0x0?, 0x0?}, 0x1)
        C:/Program Files/Go/src/go/types/expr.go:979 +0x12c
go/types.(*Checker).genericExprList(0x400050a400, {0x40001a1800, 0x1, 0x4000352a98?})
        C:/Program Files/Go/src/go/types/call.go:408 +0x328
go/types.(*Checker).callExpr(0x400050a400, 0x400072e380, 0x4000a21ec0)
        C:/Program Files/Go/src/go/types/call.go:303 +0x560
go/types.(*Checker).exprInternal(0x400050a400, 0x0, 0x400072e380, {0x7ff6adfe35b0, 0x4000a21ec0}, {0x0, 0x0})
        C:/Program Files/Go/src/go/types/expr.go:1374 +0xd0
go/types.(*Checker).rawExpr(0x400050a400, 0x0, 0x400072e380, {0x7ff6adfe35b0?, 0x4000a21ec0?}, {0x0?, 0x0?}, 0x0)
        C:/Program Files/Go/src/go/types/expr.go:979 +0x12c
go/types.(*Checker).multiExpr(0x400050a400, {0x7ff6adfe35b0, 0x4000a21ec0}, 0x0)
        C:/Program Files/Go/src/go/types/expr.go:1532 +0x60
go/types.(*Checker).initVars(0x400050a400, {0x4000062758, 0x1, 0x1}, {0x40001a1830, 0x1, 0x1}, {0x0, 0x0})
        C:/Program Files/Go/src/go/types/assignments.go:408 +0x104
go/types.(*Checker).shortVarDecl(0x400050a400, {0x7ff6adfde800, 0x40003cc090}, {0x40001a17b0, 0x1, 0x1?}, {0x40001a1830, 0x1, 0x1})
        C:/Program Files/Go/src/go/types/assignments.go:556 +0x6f4
go/types.(*Checker).stmt(0x400050a400, 0x0, {0x7ff6adfe31f0, 0x4000a21f00})
        C:/Program Files/Go/src/go/types/stmt.go:473 +0x10d4
go/types.(*Checker).stmtList(0x400050a400, 0x0, {0x40001f0fc0?, 0x0?, 0x4000339f10?})
        C:/Program Files/Go/src/go/types/stmt.go:121 +0x88
go/types.(*Checker).funcBody(0x400050a400, 0x7ff6adfe15c8?, {0x40001ceb04?, 0x40003e4000?}, 0x400072e0c0, 0x400027f350, {0x0?, 0x0?})
        C:/Program Files/Go/src/go/types/stmt.go:41 +0x21c
go/types.(*Checker).funcDecl.func1()
        C:/Program Files/Go/src/go/types/decl.go:852 +0x44
go/types.(*Checker).processDelayed(0x400050a400, 0x0)
        C:/Program Files/Go/src/go/types/check.go:467 +0x12c
go/types.(*Checker).checkFiles(0x400050a400, {0x40001a1700, 0x2, 0x2})
        C:/Program Files/Go/src/go/types/check.go:411 +0x188
go/types.(*Checker).Files(...)
        C:/Program Files/Go/src/go/types/check.go:372
golang.org/x/tools/go/packages.(*loader).loadPackage(0x40000ea000, 0x40001d35e0)
        C:/Users/env/go/pkg/mod/golang.org/x/tools@v0.1.12/go/packages/packages.go:1001 +0x624
golang.org/x/tools/go/packages.(*loader).loadRecursive.func1()
        C:/Users/env/go/pkg/mod/golang.org/x/tools@v0.1.12/go/packages/packages.go:838 +0x178
sync.(*Once).doSlow(0x0?, 0x0?)
        C:/Program Files/Go/src/sync/once.go:74 +0x100
sync.(*Once).Do(...)
        C:/Program Files/Go/src/sync/once.go:65
golang.org/x/tools/go/packages.(*loader).loadRecursive(0x0?, 0x1?)
        C:/Users/env/go/pkg/mod/golang.org/x/tools@v0.1.12/go/packages/packages.go:826 +0x50
golang.org/x/tools/go/packages.(*loader).refine.func2(0x0?)
        C:/Users/env/go/pkg/mod/golang.org/x/tools@v0.1.12/go/packages/packages.go:761 +0x30
created by golang.org/x/tools/go/packages.(*loader).refine in goroutine 1
        C:/Users/env/go/pkg/mod/golang.org/x/tools@v0.1.12/go/packages/packages.go:760 +0xa80

Expected behaviour

Start normally

Screenshots

No response

Attempted Fixes

No response

System Details

C:\Users\env\Desktop\code\go\myproject>wails doctor
DEB | Using go webview2loader
Wails CLI v2.5.0

 SUCCESS  Done.

# System

OS           | Windows 10 Home
Version      | 2009 (Build: 22631)
ID           | 23H2
Go Version   | go1.22.5
Platform     | windows
Architecture | arm64

# Wails

Version | v2.5.0

# Dependencies

Dependency | Package Name | Status    | Version
WebView2   | N/A          | Installed | 126.0.2592.113
Nodejs     | N/A          | Installed | 20.16.0
npm        | N/A          | Installed | 10.8.1
*upx       | N/A          | Available |
*nsis      | N/A          | Available |
* - Optional Dependency

# Diagnosis

Your system is ready for Wails development!
Optional package(s) installation details:
  - upx : Available at https://upx.github.io/
  - nsis : More info at https://wails.io/docs/guides/windows-installer/

 ♥   If Wails is useful to you or your company, please consider sponsoring the project:
https://github.com/sponsors/leaanthony

Additional context

No response

leek-No1 commented 2 months ago

The Go environment should be fine.

1722343220439

leaanthony commented 2 months ago

Would recommend installing the latest version

leek-No1 commented 2 months ago

Hello. I think all of these should be the latest versions. Just now, I tried another graphical framework such as Lorca. When creating a window, it requires adding "--remote-allow-origins=*". If not added, the UI would be nil. Can this be added in Wails? 1722344179239 1722344241017

leaanthony commented 2 months ago

You're using an old version of Wails. Try upgrading it.

leaanthony commented 2 months ago

Closed due to no response.