mirror of
https://git.sr.ht/~eliasnaur/gio
synced 2026-07-06 18:05:35 +00:00
app/internal/window: replace ppoll with poll
We're about to add FreeBSD where ppoll is not supported. Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
@@ -783,8 +783,8 @@ loop:
|
|||||||
}
|
}
|
||||||
// Clear poll events.
|
// Clear poll events.
|
||||||
dispFd.Revents = 0
|
dispFd.Revents = 0
|
||||||
if _, err := syscall.Ppoll(pollfds, nil, nil); err != nil && err != syscall.EINTR {
|
if _, err := syscall.Poll(pollfds, -1); err != nil && err != syscall.EINTR {
|
||||||
panic(fmt.Errorf("ppoll failed: %v", err))
|
panic(fmt.Errorf("poll failed: %v", err))
|
||||||
}
|
}
|
||||||
redraw := false
|
redraw := false
|
||||||
// Clear notifications.
|
// Clear notifications.
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ loop:
|
|||||||
var syn, redraw bool
|
var syn, redraw bool
|
||||||
// Check for pending draw events before checking animation or blocking.
|
// Check for pending draw events before checking animation or blocking.
|
||||||
// This fixes an issue on Xephyr where on startup XPending() > 0 but
|
// This fixes an issue on Xephyr where on startup XPending() > 0 but
|
||||||
// Ppoll will still block. This also prevents no-op calls to Ppoll.
|
// poll will still block. This also prevents no-op calls to poll.
|
||||||
if syn = h.handleEvents(); !syn {
|
if syn = h.handleEvents(); !syn {
|
||||||
w.mu.Lock()
|
w.mu.Lock()
|
||||||
animating := w.animating
|
animating := w.animating
|
||||||
@@ -152,7 +152,7 @@ loop:
|
|||||||
// Clear poll events.
|
// Clear poll events.
|
||||||
*xEvents = 0
|
*xEvents = 0
|
||||||
// Wait for X event or gio notification.
|
// Wait for X event or gio notification.
|
||||||
if _, err := syscall.Ppoll(pollfds, nil, nil); err != nil && err != syscall.EINTR {
|
if _, err := syscall.Poll(pollfds, -1); err != nil && err != syscall.EINTR {
|
||||||
panic(fmt.Errorf("x11 loop: poll failed: %w", err))
|
panic(fmt.Errorf("x11 loop: poll failed: %w", err))
|
||||||
}
|
}
|
||||||
switch {
|
switch {
|
||||||
|
|||||||
Reference in New Issue
Block a user