Skip to content

Commit 7334e28

Browse files
Swallow disposal exception that might occur when disposing the content object. Fixes #2188. (#2201)
1 parent fd392c9 commit 7334e28

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/RestSharp/Request/RequestContent.cs

+8-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
namespace RestSharp;
2424

2525
class RequestContent(IRestClient client, RestRequest request) : IDisposable {
26-
readonly List<Stream> _streams = new();
26+
readonly List<Stream> _streams = [];
2727
readonly ParametersCollection _parameters = new RequestParameters(request.Parameters.Union(client.DefaultParameters));
2828

2929
HttpContent? Content { get; set; }
@@ -222,6 +222,12 @@ void ReplaceHeader(string name, string? value) {
222222

223223
public void Dispose() {
224224
_streams.ForEach(x => x.Dispose());
225-
Content?.Dispose();
225+
226+
try {
227+
Content?.Dispose();
228+
}
229+
catch (Exception e) when (e is ObjectDisposedException or NullReferenceException) {
230+
// Already disposed
231+
}
226232
}
227233
}

0 commit comments

Comments
 (0)