wayland/data-device: Check resource version on cancel
For clarity, check the resource version needs the "cancelled" message in the actual vmethod rather than from the caller function. https://gitlab.gnome.org/GNOME/mutter/merge_requests/1073
This commit is contained in:
parent
b8355a6686
commit
963108a9a6
@ -608,11 +608,7 @@ destroy_data_offer (struct wl_resource *resource)
|
|||||||
if (wl_resource_get_version (offer->resource) <
|
if (wl_resource_get_version (offer->resource) <
|
||||||
WL_DATA_OFFER_ACTION_SINCE_VERSION)
|
WL_DATA_OFFER_ACTION_SINCE_VERSION)
|
||||||
meta_wayland_data_source_notify_finish (offer->source);
|
meta_wayland_data_source_notify_finish (offer->source);
|
||||||
else if (meta_wayland_data_source_get_drop_performed (offer->source) &&
|
else if (meta_wayland_data_source_get_drop_performed (offer->source))
|
||||||
meta_wayland_data_source_get_resource(offer->source) &&
|
|
||||||
wl_resource_get_version(
|
|
||||||
meta_wayland_data_source_get_resource(offer->source)) >=
|
|
||||||
WL_DATA_SOURCE_DND_FINISHED_SINCE_VERSION)
|
|
||||||
meta_wayland_source_cancel (offer->source);
|
meta_wayland_source_cancel (offer->source);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -1401,7 +1397,10 @@ meta_wayland_source_cancel (MetaWaylandDataSource *source)
|
|||||||
MetaWaylandDataSourcePrivate *priv =
|
MetaWaylandDataSourcePrivate *priv =
|
||||||
meta_wayland_data_source_get_instance_private (source);
|
meta_wayland_data_source_get_instance_private (source);
|
||||||
|
|
||||||
if (priv->resource)
|
if (!priv->resource)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (wl_resource_get_version(priv->resource) >= WL_DATA_SOURCE_DND_FINISHED_SINCE_VERSION)
|
||||||
wl_data_source_send_cancelled (priv->resource);
|
wl_data_source_send_cancelled (priv->resource);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user