Skip to content

Commit 2468473

Browse files
authored
Merge branch 'trunk' into rbe_eif
2 parents 48aad60 + 014d1c3 commit 2468473

File tree

3 files changed

+14
-9
lines changed

3 files changed

+14
-9
lines changed

dotnet/src/webdriver/Chromium/ChromiumDriver.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,6 +361,8 @@ public DevToolsSession GetDevToolsSession(int devToolsProtocolVersion)
361361
/// <summary>
362362
/// Closes a DevTools session.
363363
/// </summary>
364+
[RequiresUnreferencedCode(DevToolsSession.CDP_AOTIncompatibilityMessage)]
365+
[RequiresDynamicCode(DevToolsSession.CDP_AOTIncompatibilityMessage)]
364366
public void CloseDevToolsSession()
365367
{
366368
if (this.devToolsSession != null)

dotnet/src/webdriver/Command.cs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,11 @@ public class Command
3333
{
3434
private readonly static JsonSerializerOptions s_jsonSerializerOptions = new()
3535
{
36-
TypeInfoResolver = JsonTypeInfoResolver.Combine(CommandJsonSerializerContext.Default, new DefaultJsonTypeInfoResolver()),
36+
TypeInfoResolverChain =
37+
{
38+
CommandJsonSerializerContext.Default,
39+
new DefaultJsonTypeInfoResolver()
40+
},
3741
Converters = { new ResponseValueJsonConverter() }
3842
};
3943

@@ -86,17 +90,14 @@ public string ParametersAsJsonString
8690
{
8791
get
8892
{
89-
string parametersString;
9093
if (this.Parameters != null && this.Parameters.Count > 0)
9194
{
92-
parametersString = JsonSerializer.Serialize(this.Parameters, s_jsonSerializerOptions);
95+
return JsonSerializer.Serialize(this.Parameters, s_jsonSerializerOptions);
9396
}
9497
else
9598
{
96-
parametersString = "{}";
99+
return "{}";
97100
}
98-
99-
return parametersString;
100101
}
101102
}
102103

@@ -118,7 +119,7 @@ public override string ToString()
118119
/// <exception cref="ArgumentNullException">If <paramref name="value"/> is <see langword="null"/>.</exception>
119120
private static Dictionary<string, object?>? ConvertParametersFromJson(string value)
120121
{
121-
Dictionary<string, object?>? parameters = JsonSerializer.Deserialize<Dictionary<string, object?>>(value, s_jsonSerializerOptions);
122+
Dictionary<string, object?>? parameters = JsonSerializer.Deserialize<Dictionary<string, object?>>(value, CommandJsonSerializerContext.Default.DictionaryStringObject!);
122123
return parameters;
123124
}
124125
}
@@ -167,5 +168,6 @@ public override string ToString()
167168
[JsonSerializable(typeof(Dictionary<string, short>))]
168169
[JsonSerializable(typeof(Dictionary<string, ushort>))]
169170
[JsonSerializable(typeof(Dictionary<string, string>))]
171+
[JsonSourceGenerationOptions(Converters = [typeof(ResponseValueJsonConverter)])]
170172
internal partial class CommandJsonSerializerContext : JsonSerializerContext;
171173
}

dotnet/src/webdriver/Internal/FileUtilities.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,9 +168,10 @@ public static string GetCurrentDirectory()
168168
string? location = null;
169169

170170
// Make sure not to call Path.GetDirectoryName if assembly location is null or empty
171-
if (!string.IsNullOrEmpty(executingAssembly.Location))
171+
string assemblyLocation = executingAssembly.Location;
172+
if (!string.IsNullOrEmpty(assemblyLocation))
172173
{
173-
location = Path.GetDirectoryName(executingAssembly.Location);
174+
location = Path.GetDirectoryName(assemblyLocation);
174175
}
175176

176177
if (string.IsNullOrEmpty(location))

0 commit comments

Comments
 (0)