Also fixes an issue with potential stream types that throw a NotSupportedException when checking its properties. [Apparently, they exist.](https://github.com/dotnet/corefx/blob/master/src/System.Net.Http.WinHttpHandler/src/System/Net/Http/WinHttpResponseStream.cs)pull/768/head
| @@ -120,6 +120,9 @@ namespace Discord.Rest | |||||
| string name, IVoiceRegion region, Stream jpegIcon, RequestOptions options) | string name, IVoiceRegion region, Stream jpegIcon, RequestOptions options) | ||||
| { | { | ||||
| var args = new CreateGuildParams(name, region.Id); | var args = new CreateGuildParams(name, region.Id); | ||||
| if (jpegIcon != null) | |||||
| args.Icon = new API.Image(jpegIcon); | |||||
| var model = await client.ApiClient.CreateGuildAsync(args, options).ConfigureAwait(false); | var model = await client.ApiClient.CreateGuildAsync(args, options).ConfigureAwait(false); | ||||
| return RestGuild.Create(client, model); | return RestGuild.Create(client, model); | ||||
| } | } | ||||
| @@ -1,5 +1,6 @@ | |||||
| using Newtonsoft.Json; | |||||
| using System; | |||||
| using System; | |||||
| using System.IO; | |||||
| using Newtonsoft.Json; | |||||
| using Model = Discord.API.Image; | using Model = Discord.API.Image; | ||||
| namespace Discord.Net.Converters | namespace Discord.Net.Converters | ||||
| @@ -23,8 +24,12 @@ namespace Discord.Net.Converters | |||||
| if (image.Stream != null) | if (image.Stream != null) | ||||
| { | { | ||||
| byte[] bytes = new byte[image.Stream.Length - image.Stream.Position]; | |||||
| image.Stream.Read(bytes, 0, bytes.Length); | |||||
| Stream cloneStream = new MemoryStream(); | |||||
| image.Stream.CopyTo(cloneStream); | |||||
| byte[] bytes = new byte[cloneStream.Length]; | |||||
| cloneStream.Seek(0, SeekOrigin.Begin); | |||||
| cloneStream.Read(bytes, 0, bytes.Length); | |||||
| string base64 = Convert.ToBase64String(bytes); | string base64 = Convert.ToBase64String(bytes); | ||||
| writer.WriteValue($"data:image/jpeg;base64,{base64}"); | writer.WriteValue($"data:image/jpeg;base64,{base64}"); | ||||