aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAustin Hellyer <[email protected]>2016-11-19 07:39:23 -0800
committerAustin Hellyer <[email protected]>2016-11-19 07:39:23 -0800
commitfea63c6cbfe147d577928053a9351b6c4559fa48 (patch)
treef077ab9bef7f7a9a8bdbd42a6f07f5d1781ea9c6 /src
parentAdd PublicChannel::guild() (diff)
downloadserenity-fea63c6cbfe147d577928053a9351b6c4559fa48.tar.xz
serenity-fea63c6cbfe147d577928053a9351b6c4559fa48.zip
Don't send embed on message edits if empty
Diffstat (limited to 'src')
-rw-r--r--src/client/context.rs14
-rw-r--r--src/model/channel.rs2
2 files changed, 10 insertions, 6 deletions
diff --git a/src/client/context.rs b/src/client/context.rs
index 4811748..9103e3a 100644
--- a/src/client/context.rs
+++ b/src/client/context.rs
@@ -784,12 +784,16 @@ impl Context {
-> Result<Message> where C: Into<ChannelId>,
F: FnOnce(CreateEmbed) -> CreateEmbed,
M: Into<MessageId> {
- let map = ObjectBuilder::new()
- .insert("content", text)
- .insert("embed", Value::Object(f(CreateEmbed::default()).0))
- .build();
+ let mut map = ObjectBuilder::new()
+ .insert("content", text);
+
+ let embed = f(CreateEmbed::default()).0;
+
+ if embed.len() > 1 {
+ map = map.insert("embed", Value::Object(embed));
+ }
- http::edit_message(channel_id.into().0, message_id.into().0, map)
+ http::edit_message(channel_id.into().0, message_id.into().0, map.build())
}
pub fn edit_note<U: Into<UserId>>(&self, user_id: U, note: &str)
diff --git a/src/model/channel.rs b/src/model/channel.rs
index 852a1d0..07e6939 100644
--- a/src/model/channel.rs
+++ b/src/model/channel.rs
@@ -511,7 +511,7 @@ impl Message {
let embed = embed(CreateEmbed::default()).0;
- if !embed.is_empty() {
+ if embed.len() > 1 {
map = map.insert("embed", Value::Object(embed));
}