summaryrefslogtreecommitdiffstats
path: root/graphics
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2022-07-01 03:37:28 +0200
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2022-07-01 03:37:28 +0200
commit9330a83775991539e2d0b395b1422072b4baec21 (patch)
tree4bc721990c9b6a3ef139e25577201d4be1ebcc92 /graphics
parent799a7e501d9733cf08cbb38d17267fcbafc5d272 (diff)
downloadiced-9330a83775991539e2d0b395b1422072b4baec21.tar.gz
iced-9330a83775991539e2d0b395b1422072b4baec21.tar.bz2
iced-9330a83775991539e2d0b395b1422072b4baec21.zip
Fix `Widget::tag` implementation of `pure::Canvas`
Using `P::State` can cause a panic if the `Canvas` has `()` as `P::State` and replaces a stateless widget in a future `view` call.
Diffstat (limited to 'graphics')
-rw-r--r--graphics/src/widget/pure/canvas.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/graphics/src/widget/pure/canvas.rs b/graphics/src/widget/pure/canvas.rs
index 2e3e7ede..b51d5853 100644
--- a/graphics/src/widget/pure/canvas.rs
+++ b/graphics/src/widget/pure/canvas.rs
@@ -109,7 +109,8 @@ where
B: Backend,
{
fn tag(&self) -> tree::Tag {
- tree::Tag::of::<P::State>()
+ struct Tag<T>(T);
+ tree::Tag::of::<Tag<P::State>>()
}
fn state(&self) -> tree::State {