Browse Source

fix: Move content check for ModifyMessage (#1503)

good catch, thanks!
tags/2.3.0
Paulo GitHub 5 years ago
parent
commit
f8b2b5627e
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 7 deletions
  1. +2
    -7
      src/Discord.Net.Rest/DiscordRestApiClient.cs
  2. +5
    -0
      src/Discord.Net.Rest/Entities/Messages/MessageHelper.cs

+ 2
- 7
src/Discord.Net.Rest/DiscordRestApiClient.cs View File

@@ -602,13 +602,8 @@ namespace Discord.API
Preconditions.NotEqual(channelId, 0, nameof(channelId));
Preconditions.NotEqual(messageId, 0, nameof(messageId));
Preconditions.NotNull(args, nameof(args));
if (args.Content.IsSpecified)
{
if (!args.Embed.IsSpecified)
Preconditions.NotNullOrEmpty(args.Content, nameof(args.Content));
if (args.Content.Value?.Length > DiscordConfig.MaxMessageSize)
throw new ArgumentOutOfRangeException($"Message content is too long, length must be less or equal to {DiscordConfig.MaxMessageSize}.", nameof(args.Content));
}
if (args.Content.IsSpecified && args.Content.Value?.Length > DiscordConfig.MaxMessageSize)
throw new ArgumentOutOfRangeException($"Message content is too long, length must be less or equal to {DiscordConfig.MaxMessageSize}.", nameof(args.Content));
options = RequestOptions.CreateOrClone(options);

var ids = new BucketIds(channelId: channelId);


+ 5
- 0
src/Discord.Net.Rest/Entities/Messages/MessageHelper.cs View File

@@ -32,6 +32,11 @@ namespace Discord.Rest
var args = new MessageProperties();
func(args);

bool hasText = args.Content.IsSpecified ? !string.IsNullOrEmpty(args.Content.Value) : !string.IsNullOrEmpty(msg.Content);
bool hasEmbed = args.Embed.IsSpecified ? args.Embed.Value != null : msg.Embeds.Any();
if (!hasText && !hasEmbed)
Preconditions.NotNullOrEmpty(args.Content.IsSpecified ? args.Content.Value : string.Empty, nameof(args.Content));

var apiArgs = new API.Rest.ModifyMessageParams
{
Content = args.Content,


Loading…
Cancel
Save