Skip to content

Pcbnew: Track clearance lines have a repaint bug

Description

When changing layer to a non-copper layer, some track clearance lines don't disappear until the track is selected or the canvas is moved

Steps to reproduce

  1. Open video demo (or any PCB with tracks on two or more layers)
  2. Select the F_Cu layer
  3. Preferences -> PCB Editor -> Clearance Outlines -> Tracks: Show always
  4. OK dialog
  5. Clearances shown for top and bottom copper layers
  6. Choose F_SilkScreen
  7. Top clearances disappear (expected)
  8. Bottom clearances remain until the track is selected or the canvas is moved (i.e. the track gets repainted)

clearance-2024-12-29_02.53.06

KiCad Version

Application: KiCad PCB Editor x86_64 on x86_64

Version: 9.0.0-rc1-127-gfcb55accab-dirty, debug build

Libraries:
	wxWidgets 3.2.6
	FreeType 2.13.3
	HarfBuzz 10.1.0
	FontConfig 2.15.0
	libcurl/8.11.1 OpenSSL/3.4.0 zlib/1.3.1 brotli/1.1.0 zstd/1.5.6 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.0 nghttp2/1.64.0 nghttp3/1.6.0

Platform: EndeavourOS, 64 bit, Little endian, wxGTK, X11, , x11
OpenGL: Intel, Mesa Intel(R) Iris(R) Xe Graphics (ADL GT2), 4.6 (Compatibility Profile) Mesa 24.3.1-arch1.3

Build Info:
	Date: Dec 29 2024 02:43:37
	wxWidgets: 3.2.6 (wchar_t,wx containers) GTK+ 3.24
	Boost: 1.86.0
	OCC: 7.8.1
	Curl: 8.11.1
	ngspice: 43
	Compiler: GCC 14.2.1 with C++ ABI 1019

Build settings:
	KICAD_USE_EGL=ON
	KICAD_IPC_API=ON
	KICAD_STDLIB_DEBUG=OFF
	KICAD_STDLIB_LIGHT_DEBUG=OFF
	KICAD_SANITIZE_ADDRESS=OFF
	KICAD_SANITIZE_THREADS=OFF

Locale: 
	Lang: en_GB
	Enc: UTF-8
	Num: 1,234.5
	Encoded кΩ丈: D0BACEA9E4B888 (sys), D0BACEA9E4B888 (utf8)
Edited by John Beard