Skip to content

Commit 5cc936b

Browse files
committed
refactor: Avoid unnecessary cloning if MediaEventContent.filename is None, fix wrong implementation for ImageMessageEventContent
1 parent ebe9038 commit 5cc936b

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

crates/matrix-sdk-base/src/media.rs

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,11 @@ impl MediaEventContent for AudioMessageEventContent {
171171
}
172172

173173
fn filename_or_body(&self) -> Option<String> {
174-
Some(self.filename.clone().unwrap_or_else(|| self.body.clone()))
174+
if let Some(filename) = &self.filename {
175+
Some(filename.clone())
176+
} else {
177+
Some(self.body.clone())
178+
}
175179
}
176180

177181
fn thumbnail_source(&self) -> Option<MediaSource> {
@@ -185,7 +189,11 @@ impl MediaEventContent for FileMessageEventContent {
185189
}
186190

187191
fn filename_or_body(&self) -> Option<String> {
188-
Some(self.filename.clone().unwrap_or_else(|| self.body.clone()))
192+
if let Some(filename) = &self.filename {
193+
Some(filename.clone())
194+
} else {
195+
Some(self.body.clone())
196+
}
189197
}
190198

191199
fn thumbnail_source(&self) -> Option<MediaSource> {
@@ -199,7 +207,11 @@ impl MediaEventContent for ImageMessageEventContent {
199207
}
200208

201209
fn filename_or_body(&self) -> Option<String> {
202-
self.filename.clone()
210+
if let Some(filename) = &self.filename {
211+
Some(filename.clone())
212+
} else {
213+
Some(self.body.clone())
214+
}
203215
}
204216

205217
fn thumbnail_source(&self) -> Option<MediaSource> {
@@ -216,7 +228,11 @@ impl MediaEventContent for VideoMessageEventContent {
216228
}
217229

218230
fn filename_or_body(&self) -> Option<String> {
219-
Some(self.filename.clone().unwrap_or_else(|| self.body.clone()))
231+
if let Some(filename) = &self.filename {
232+
Some(filename.clone())
233+
} else {
234+
Some(self.body.clone())
235+
}
220236
}
221237

222238
fn thumbnail_source(&self) -> Option<MediaSource> {

0 commit comments

Comments
 (0)