[GH-ISSUE #4455] Advanced settings cannot be opened when the language is set to Japanese #9161

Closed
opened 2026-08-05 01:21:04 -04:00 by saavagebueno · 3 comments
Owner

Originally created by @kita-sato on GitHub (Sep 7, 2025).
Original GitHub issue: https://github.com/netbirdio/netbird/issues/4455

Describe the problem

same issue https://github.com/netbirdio/netbird/issues/3345

This problem might be caused by the font "Yugothm.ttc," i think.

5113c70943/client/ui/font_windows.go (L33-L35)

To Reproduce

Steps to reproduce the behavior:

  1. Open Windows Settings, set Language & region > Windows display language to '日本語'
  2. Click the task tray icon, then click Settings > Advanced Settings.
  3. See error (or not seeing the advanced settings window)

Expected behavior

Advanced Settings is opened

Are you using NetBird Cloud?

No, we are using the self-host version.

NetBird version

netbird v0.56.0

Additional context

  • OS: Windows 11 Home
  • Windows display language: 日本語/Japanese
Originally created by @kita-sato on GitHub (Sep 7, 2025). Original GitHub issue: https://github.com/netbirdio/netbird/issues/4455 **Describe the problem** same issue https://github.com/netbirdio/netbird/issues/3345 This problem might be caused by the font "Yugothm.ttc," i think. https://github.com/netbirdio/netbird/blob/5113c7094317a99aaf247720db21741c3327d088/client/ui/font_windows.go#L33-L35 **To Reproduce** Steps to reproduce the behavior: 1. Open Windows Settings, set Language & region > Windows display language to '日本語' 2. Click the task tray icon, then click Settings > Advanced Settings. 3. See error (or not seeing the advanced settings window) **Expected behavior** Advanced Settings is opened **Are you using NetBird Cloud?** No, we are using the self-host version. **NetBird version** `netbird v0.56.0` **Additional context** - OS: Windows 11 Home - Windows display language: 日本語/Japanese
saavagebueno added the triage-needed label 2026-08-05 01:21:04 -04:00
Author
Owner

@h6ah4i commented on GitHub (Oct 14, 2025):

+1 Same here

<!-- gh-comment-id:3401023799 --> @h6ah4i commented on GitHub (Oct 14, 2025): +1 Same here
Author
Owner

@h6ah4i commented on GitHub (Oct 14, 2025):

Here's a crash log. It seem Yugothm.ttc is the culprit, TTC files must not be specified for the current implementation.

2025/10/14 19:13:30 Fyne error:  font load error
2025/10/14 19:13:30   Cause: collections not allowed
2025/10/14 19:13:30   At: C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:197
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x0 pc=0x7ff73b389344]

goroutine 1 [running, locked to thread]:
fyne.io/fyne/v2/internal/painter.(*dynamicFontMap).ResolveFace(0xc003ce27e0, 0x20)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:362 +0x64
fyne.io/fyne/v2/internal/painter.walkString({0x7ff73c761840, 0xc003ce27e0}, {0xc000202f04?, 0x0?}, 0x380, {0x0, 0x0, 0x0, 0x0, 0x0, ...}, ...)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:256 +0xb9
fyne.io/fyne/v2/internal/painter.MeasureString({0x7ff73c761840?, 0xc003ce27e0?}, {0xc000202f04?, 0x0?}, 0x0?, {0x0, 0x0, 0x0, 0x0, 0x0, ...})
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:207 +0x6e
fyne.io/fyne/v2/internal/painter.measureText({0xc000202f04, 0x0}, 0x41600000, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, {0x0, ...})
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:233 +0xa5
fyne.io/fyne/v2/internal/painter.RenderedTextSize({0xc000202f04, 0x0}, 0x41600000, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, {0x0, ...})
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:218 +0xf8
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).RenderedTextSize(0x0?, {0xc000202f04?, 0x7ff73b3b69ae?}, 0x3c58f162?, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, ...)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/driver/glfw/driver.go:72 +0x7f
fyne.io/fyne/v2.MeasureText({0xc000202f04, 0x0}, 0x41600000, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0})
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/text.go:72 +0x98
fyne.io/fyne/v2/widget.(*RichText).updateRowBounds.func1({0xc000205be0?, 0x7ff73c5a51e9?, 0x0?})
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/richtext.go:481 +0x892
fyne.io/fyne/v2/widget.(*RichText).updateRowBounds(0xc00036ed38)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/richtext.go:495 +0x1f0
fyne.io/fyne/v2/widget.(*entryRenderer).Refresh(0xc000210640)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/entry.go:1811 +0xcf
fyne.io/fyne/v2/widget.(*BaseWidget).Refresh(0xc00036ec08)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/widget.go:137 +0x9d
fyne.io/fyne/v2/widget.(*Entry).Refresh(0xc00036ec08)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/entry.go:488 +0x52
fyne.io/fyne/v2/widget.(*DisableableWidget).Disable(0xc00036ec08?)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/widget.go:207 +0x4e
fyne.io/fyne/v2/widget.(*Entry).Disable(...)
        C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/entry.go:225
main.(*serviceClient).showSettingsUI(0xc00045e708)
        C:/Users/******/git/netbird/client/ui/client_ui.go:414 +0x225
main.newServiceClient(0xc000237ee0)
        C:/Users/******/git/netbird/client/ui/client_ui.go:342 +0x23d
main.main()
        C:/Users/******/git/netbird/client/ui/client_ui.go:88 +0x250
2025-10-14T19:13:30+09:00 INFO client/ui/event_handler.go:228: command 'settings true' failed with exit code 2
<!-- gh-comment-id:3401122129 --> @h6ah4i commented on GitHub (Oct 14, 2025): Here's a crash log. It seem `Yugothm.ttc` is the culprit, TTC files must not be specified for the current implementation. ``` 2025/10/14 19:13:30 Fyne error: font load error 2025/10/14 19:13:30 Cause: collections not allowed 2025/10/14 19:13:30 At: C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:197 panic: runtime error: invalid memory address or nil pointer dereference [signal 0xc0000005 code=0x0 addr=0x0 pc=0x7ff73b389344] goroutine 1 [running, locked to thread]: fyne.io/fyne/v2/internal/painter.(*dynamicFontMap).ResolveFace(0xc003ce27e0, 0x20) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:362 +0x64 fyne.io/fyne/v2/internal/painter.walkString({0x7ff73c761840, 0xc003ce27e0}, {0xc000202f04?, 0x0?}, 0x380, {0x0, 0x0, 0x0, 0x0, 0x0, ...}, ...) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:256 +0xb9 fyne.io/fyne/v2/internal/painter.MeasureString({0x7ff73c761840?, 0xc003ce27e0?}, {0xc000202f04?, 0x0?}, 0x0?, {0x0, 0x0, 0x0, 0x0, 0x0, ...}) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:207 +0x6e fyne.io/fyne/v2/internal/painter.measureText({0xc000202f04, 0x0}, 0x41600000, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, {0x0, ...}) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:233 +0xa5 fyne.io/fyne/v2/internal/painter.RenderedTextSize({0xc000202f04, 0x0}, 0x41600000, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, {0x0, ...}) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/painter/font.go:218 +0xf8 fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).RenderedTextSize(0x0?, {0xc000202f04?, 0x7ff73b3b69ae?}, 0x3c58f162?, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, ...) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/internal/driver/glfw/driver.go:72 +0x7f fyne.io/fyne/v2.MeasureText({0xc000202f04, 0x0}, 0x41600000, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/text.go:72 +0x98 fyne.io/fyne/v2/widget.(*RichText).updateRowBounds.func1({0xc000205be0?, 0x7ff73c5a51e9?, 0x0?}) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/richtext.go:481 +0x892 fyne.io/fyne/v2/widget.(*RichText).updateRowBounds(0xc00036ed38) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/richtext.go:495 +0x1f0 fyne.io/fyne/v2/widget.(*entryRenderer).Refresh(0xc000210640) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/entry.go:1811 +0xcf fyne.io/fyne/v2/widget.(*BaseWidget).Refresh(0xc00036ec08) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/widget.go:137 +0x9d fyne.io/fyne/v2/widget.(*Entry).Refresh(0xc00036ec08) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/entry.go:488 +0x52 fyne.io/fyne/v2/widget.(*DisableableWidget).Disable(0xc00036ec08?) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/widget.go:207 +0x4e fyne.io/fyne/v2/widget.(*Entry).Disable(...) C:/Users/******/go/pkg/mod/fyne.io/fyne/v2@v2.5.3/widget/entry.go:225 main.(*serviceClient).showSettingsUI(0xc00045e708) C:/Users/******/git/netbird/client/ui/client_ui.go:414 +0x225 main.newServiceClient(0xc000237ee0) C:/Users/******/git/netbird/client/ui/client_ui.go:342 +0x23d main.main() C:/Users/******/git/netbird/client/ui/client_ui.go:88 +0x250 2025-10-14T19:13:30+09:00 INFO client/ui/event_handler.go:228: command 'settings true' failed with exit code 2 ```
Author
Owner

@h6ah4i commented on GitHub (Jan 5, 2026):

@kita-sato Hi. This issue is fixed in v0.61.1 🚀 Could you verify on your end? Thanks.

<!-- gh-comment-id:3709387924 --> @h6ah4i commented on GitHub (Jan 5, 2026): @kita-sato Hi. This issue is fixed in [v0.61.1](https://github.com/netbirdio/netbird/releases/tag/v0.61.1) 🚀 Could you verify on your end? Thanks.
Sign in to join this conversation.
No Label triage-needed
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#9161