test(wayland): send a single request to trigger the no_surface error
- commit
- 0e8d58dda7ac490bb86b5a259891ebe8604d0396
- author
- brice · · 2026-10-21 07:42 UTC
- parent
- 318e2d8
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
1 file · +3 -1
M internal/adapters/wayland/syncobj_test.go +3 -1
| @@ -443,7 +443,9 @@ func TestSyncobjProtocolErrors(t *testing.T) { | |||
| 443 | 443 | }, func(h *syncHarness) uint32 { return h.syncSurf }, uint32(linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1ErrorUnsupportedBuffer)}, | |
| 444 | 444 | {"surface destroyed", func(h *syncHarness) { | |
| 445 | 445 | requestProtocol(t, h.c, h.surf, wayland.SurfaceRequestDestroy) | |
| 446 | - | h.setPoints(1, 2) | |
| 446 | + | // The first request already raises the error and the server | |
| 447 | + | // then closes the connection: a second write could hit EPIPE. | |
| 448 | + | requestProtocol(t, h.c, h.syncSurf, linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1RequestSetAcquirePoint, h.timeline, uint32(0), uint32(1)) | |
| 447 | 449 | }, func(h *syncHarness) uint32 { return h.syncSurf }, uint32(linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1ErrorNoSurface)}, | |
| 448 | 450 | {"surface exists", func(h *syncHarness) { | |
| 449 | 451 | mgr := bindProtocol(t, h.c, "wp_linux_drm_syncobj_manager_v1") | |
| @@ -443,7 +443,9 @@ func TestSyncobjProtocolErrors(t *testing.T) { | |||||
| 443 | }, func(h *syncHarness) uint32 { return h.syncSurf }, uint32(linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1ErrorUnsupportedBuffer)}, | 443 | }, func(h *syncHarness) uint32 { return h.syncSurf }, uint32(linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1ErrorUnsupportedBuffer)}, | ||
| 444 | {"surface destroyed", func(h *syncHarness) { | 444 | {"surface destroyed", func(h *syncHarness) { | ||
| 445 | requestProtocol(t, h.c, h.surf, wayland.SurfaceRequestDestroy) | 445 | requestProtocol(t, h.c, h.surf, wayland.SurfaceRequestDestroy) | ||
| 446 | - | h.setPoints(1, 2) | 446 | + | // The first request already raises the error and the server |
| 447 | + | // then closes the connection: a second write could hit EPIPE. | |||
| 448 | + | requestProtocol(t, h.c, h.syncSurf, linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1RequestSetAcquirePoint, h.timeline, uint32(0), uint32(1)) | |||
| 447 | }, func(h *syncHarness) uint32 { return h.syncSurf }, uint32(linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1ErrorNoSurface)}, | 449 | }, func(h *syncHarness) uint32 { return h.syncSurf }, uint32(linuxdrmsyncobj.WpLinuxDrmSyncobjSurfaceV1ErrorNoSurface)}, | ||
| 448 | {"surface exists", func(h *syncHarness) { | 450 | {"surface exists", func(h *syncHarness) { | ||
| 449 | mgr := bindProtocol(t, h.c, "wp_linux_drm_syncobj_manager_v1") | 451 | mgr := bindProtocol(t, h.c, "wp_linux_drm_syncobj_manager_v1") | ||