Skip to content

Commit 649246f

Browse files
committed
Fix implicit cast of null and BooleanOr
1 parent 03f4507 commit 649246f

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

src/Protocol/Models/BooleanOr.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public object RawValue
4848

4949
public static implicit operator BooleanOr<T>(T value)
5050
{
51-
return new BooleanOr<T>(value);
51+
return value != null ? new BooleanOr<T>(value) : null;
5252
}
5353

5454
public static implicit operator BooleanOr<T>(bool value)

test/Lsp.Tests/Capabilities/Server/ServerCapabilitiesTests.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using Newtonsoft.Json.Linq;
66
using OmniSharp.Extensions.LanguageServer.Protocol;
77
using OmniSharp.Extensions.LanguageServer.Protocol.Client.Capabilities;
8+
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
89
using OmniSharp.Extensions.LanguageServer.Protocol.Serialization;
910
using OmniSharp.Extensions.LanguageServer.Protocol.Server.Capabilities;
1011
using Xunit;
@@ -75,7 +76,9 @@ public void SimpleTest(string expected)
7576
[Theory, JsonFixture]
7677
public void Optional(string expected)
7778
{
78-
var model = new ServerCapabilities();
79+
var model = new ServerCapabilities {
80+
ColorProvider = (ColorOptions)null
81+
};
7982

8083
var result = Fixture.SerializeObject(model);
8184

0 commit comments

Comments
 (0)