aboutsummaryrefslogtreecommitdiffstats
path: root/components/webgpu/lib.rs
diff options
context:
space:
mode:
authorKunal Mohan <kunalmohan99@gmail.com>2020-08-02 14:25:18 +0530
committerKunal Mohan <kunalmohan99@gmail.com>2020-08-02 14:25:18 +0530
commit8eff1d74de989f837eb54e80fb7296a98ef3220b (patch)
tree31541e6de3eb59e5827457f811e8011a65c4c194 /components/webgpu/lib.rs
parentcd8d9162e66b9cdf03918fc3c24d855e6938edb7 (diff)
downloadservo-8eff1d74de989f837eb54e80fb7296a98ef3220b.tar.gz
servo-8eff1d74de989f837eb54e80fb7296a98ef3220b.zip
Record validation error in mapAsync()
Diffstat (limited to 'components/webgpu/lib.rs')
-rw-r--r--components/webgpu/lib.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/components/webgpu/lib.rs b/components/webgpu/lib.rs
index 3fed81811e3..d73fd4045d4 100644
--- a/components/webgpu/lib.rs
+++ b/components/webgpu/lib.rs
@@ -67,6 +67,8 @@ pub enum WebGPURequest {
BufferMapAsync {
sender: IpcSender<WebGPUResponseResult>,
buffer_id: id::BufferId,
+ device_id: id::DeviceId,
+ scope_id: Option<u64>,
host_map: HostMap,
map_range: std::ops::Range<u64>,
},
@@ -407,6 +409,8 @@ impl<'a> WGPU<'a> {
WebGPURequest::BufferMapAsync {
sender,
buffer_id,
+ device_id,
+ scope_id,
host_map,
map_range,
} => {
@@ -456,11 +460,12 @@ impl<'a> WGPU<'a> {
};
let global = &self.global;
let result = gfx_select!(buffer_id => global.buffer_map_async(buffer_id, map_range, operation));
- if let Err(e) = result {
+ if let Err(ref e) = result {
if let Err(w) = sender.send(Err(format!("{:?}", e))) {
warn!("Failed to send BufferMapAsync Response ({:?})", w);
}
}
+ self.send_result(device_id, scope_id, result);
},
WebGPURequest::BufferMapComplete(buffer_id) => {
self.buffer_maps.remove(&buffer_id);