diff options
| author | Austin Hellyer <[email protected]> | 2016-11-19 07:39:23 -0800 |
|---|---|---|
| committer | Austin Hellyer <[email protected]> | 2016-11-19 07:39:23 -0800 |
| commit | fea63c6cbfe147d577928053a9351b6c4559fa48 (patch) | |
| tree | f077ab9bef7f7a9a8bdbd42a6f07f5d1781ea9c6 /src | |
| parent | Add PublicChannel::guild() (diff) | |
| download | serenity-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.rs | 14 | ||||
| -rw-r--r-- | src/model/channel.rs | 2 |
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)); } |