diff --git a/src/Discord.Net.Core/CDN.cs b/src/Discord.Net.Core/CDN.cs index 9155869f7..bc8d96f86 100644 --- a/src/Discord.Net.Core/CDN.cs +++ b/src/Discord.Net.Core/CDN.cs @@ -56,10 +56,13 @@ namespace Discord /// /// A URL pointing to the guild's icon in the specified size. /// - public static string GetGuildIconUrl(ulong guildId, string iconId, ushort size, ImageFormat format) + public static string GetGuildIconUrl(ulong guildId, string iconId, ImageFormat format, ushort size) { if (string.IsNullOrWhiteSpace(iconId)) return null; + if (format == ImageFormat.Gif) + throw new ArgumentException("Requested image format mustn't be a gif."); + string extension = FormatToExtension(format, iconId); return $"{DiscordConfig.CDNUrl}icons/{guildId}/{iconId}.{extension}?size={size}"; } diff --git a/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs b/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs index 1cf586a7c..6552dc768 100644 --- a/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs +++ b/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs @@ -60,7 +60,7 @@ namespace Discord.Rest public ulong DefaultChannelId => Id; /// public string GetIconUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128) - => CDN.GetGuildIconUrl(Id, IconId, size, format); + => CDN.GetGuildIconUrl(Id, IconId, format, size); /// public string SplashUrl => CDN.GetGuildSplashUrl(Id, SplashId); diff --git a/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs b/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs index af841582e..9bd2fb442 100644 --- a/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs +++ b/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs @@ -21,7 +21,7 @@ namespace Discord.Rest public DateTimeOffset CreatedAt => SnowflakeUtils.FromSnowflake(Id); /// public string GetIconUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128) - => CDN.GetGuildIconUrl(Id, _iconId, size, format); + => CDN.GetGuildIconUrl(Id, _iconId, format, size); internal RestUserGuild(BaseDiscordClient discord, ulong id) : base(discord, id) diff --git a/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs b/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs index f22b4705c..2a210ecd3 100644 --- a/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs +++ b/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs @@ -98,7 +98,7 @@ namespace Discord.WebSocket public DateTimeOffset CreatedAt => SnowflakeUtils.FromSnowflake(Id); /// public string GetIconUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128) - => CDN.GetGuildIconUrl(Id, IconId, size, format); + => CDN.GetGuildIconUrl(Id, IconId, format, size); /// public string SplashUrl => CDN.GetGuildSplashUrl(Id, SplashId); /// Indicates whether the client has all the members downloaded to the local guild cache.