mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-22 12:55:58 +01:00
output: disallow NULL event for wlr_output_send_present()
This commit is contained in:
parent
1b65a80e9d
commit
1089b7b8d6
3 changed files with 13 additions and 9 deletions
|
@ -64,7 +64,10 @@ static bool output_commit(struct wlr_output *wlr_output) {
|
|||
}
|
||||
|
||||
if (wlr_output->pending.committed & WLR_OUTPUT_STATE_BUFFER) {
|
||||
wlr_output_send_present(wlr_output, NULL);
|
||||
struct wlr_output_event_present present_event = {
|
||||
.commit_seq = wlr_output->commit_seq + 1,
|
||||
};
|
||||
wlr_output_send_present(wlr_output, &present_event);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
@ -89,7 +89,10 @@ static void presentation_feedback_handle_discarded(void *data,
|
|||
struct wp_presentation_feedback *wp_feedback) {
|
||||
struct wlr_wl_presentation_feedback *feedback = data;
|
||||
|
||||
wlr_output_send_present(&feedback->output->wlr_output, NULL);
|
||||
struct wlr_output_event_present event = {
|
||||
.commit_seq = feedback->commit_seq,
|
||||
};
|
||||
wlr_output_send_present(&feedback->output->wlr_output, &event);
|
||||
|
||||
presentation_feedback_destroy(feedback);
|
||||
}
|
||||
|
@ -345,7 +348,10 @@ static bool output_commit(struct wlr_output *wlr_output) {
|
|||
wp_presentation_feedback_add_listener(wp_feedback,
|
||||
&presentation_feedback_listener, feedback);
|
||||
} else {
|
||||
wlr_output_send_present(wlr_output, NULL);
|
||||
struct wlr_output_event_present present_event = {
|
||||
.commit_seq = wlr_output->commit_seq + 1,
|
||||
};
|
||||
wlr_output_send_present(wlr_output, &present_event);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -956,12 +956,7 @@ void wlr_output_schedule_frame(struct wlr_output *output) {
|
|||
|
||||
void wlr_output_send_present(struct wlr_output *output,
|
||||
struct wlr_output_event_present *event) {
|
||||
struct wlr_output_event_present _event = {0};
|
||||
if (event == NULL) {
|
||||
event = &_event;
|
||||
event->commit_seq = output->commit_seq + 1;
|
||||
}
|
||||
|
||||
assert(event);
|
||||
event->output = output;
|
||||
|
||||
struct timespec now;
|
||||
|
|
Loading…
Reference in a new issue