Skip to content

Commit 32c9ec8

Browse files
authored
Fix Incorrect usage of the ObjectDisposedException.ThrowIf (#54144)
1 parent cc5bc6b commit 32c9ec8

File tree

8 files changed

+28
-18
lines changed

8 files changed

+28
-18
lines changed

src/Http/Http/src/Internal/ReferenceReadStream.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,6 @@ protected override void Dispose(bool disposing)
147147

148148
private void ThrowIfDisposed()
149149
{
150-
ObjectDisposedException.ThrowIf(_disposed, nameof(ReferenceReadStream));
150+
ObjectDisposedException.ThrowIf(_disposed, this);
151151
}
152152
}

src/Http/WebUtilities/src/BufferedReadStream.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -418,6 +418,6 @@ private static string DecodeLine(MemoryStream builder, bool foundCRLF)
418418

419419
private void CheckDisposed()
420420
{
421-
ObjectDisposedException.ThrowIf(_disposed, nameof(BufferedReadStream));
421+
ObjectDisposedException.ThrowIf(_disposed, this);
422422
}
423423
}

src/Http/WebUtilities/src/FileBufferingReadStream.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -497,6 +497,6 @@ public override async ValueTask DisposeAsync()
497497

498498
private void ThrowIfDisposed()
499499
{
500-
ObjectDisposedException.ThrowIf(_disposed, nameof(FileBufferingReadStream));
500+
ObjectDisposedException.ThrowIf(_disposed, this);
501501
}
502502
}

src/Http/WebUtilities/src/FileBufferingWriteStream.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,6 @@ private void EnsureFileStream()
288288

289289
private void ThrowIfDisposed()
290290
{
291-
ObjectDisposedException.ThrowIf(Disposed, nameof(FileBufferingWriteStream));
291+
ObjectDisposedException.ThrowIf(Disposed, this);
292292
}
293293
}

src/Http/WebUtilities/src/HttpRequestStreamReader.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ protected override void Dispose(bool disposing)
120120
/// <inheritdoc />
121121
public override int Peek()
122122
{
123-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpRequestStreamReader));
123+
ThrowIfDisposed();
124124

125125
if (_charBufferIndex == _charsRead)
126126
{
@@ -136,7 +136,7 @@ public override int Peek()
136136
/// <inheritdoc />
137137
public override int Read()
138138
{
139-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpRequestStreamReader));
139+
ThrowIfDisposed();
140140

141141
if (_charBufferIndex == _charsRead)
142142
{
@@ -172,7 +172,7 @@ public override int Read(Span<char> buffer)
172172
throw new ArgumentNullException(nameof(buffer));
173173
}
174174

175-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpRequestStreamReader));
175+
ThrowIfDisposed();
176176

177177
var count = buffer.Length;
178178
var charsRead = 0;
@@ -234,7 +234,7 @@ public override Task<int> ReadAsync(char[] buffer, int index, int count)
234234
[SuppressMessage("ApiDesign", "RS0027:Public API with optional parameter(s) should have the most parameters amongst its public overloads.", Justification = "Required to maintain compatibility")]
235235
public override async ValueTask<int> ReadAsync(Memory<char> buffer, CancellationToken cancellationToken = default)
236236
{
237-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpRequestStreamReader));
237+
ThrowIfDisposed();
238238

239239
if (_charBufferIndex == _charsRead && await ReadIntoBufferAsync() == 0)
240240
{
@@ -324,7 +324,7 @@ public override async ValueTask<int> ReadAsync(Memory<char> buffer, Cancellation
324324
/// <inheritdoc />
325325
public override async Task<string?> ReadLineAsync()
326326
{
327-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpRequestStreamReader));
327+
ThrowIfDisposed();
328328

329329
StringBuilder? sb = null;
330330
var consumeLineFeed = false;
@@ -359,7 +359,7 @@ public override async ValueTask<int> ReadAsync(Memory<char> buffer, Cancellation
359359
/// <inheritdoc />
360360
public override string? ReadLine()
361361
{
362-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpRequestStreamReader));
362+
ThrowIfDisposed();
363363

364364
StringBuilder? sb = null;
365365
var consumeLineFeed = false;
@@ -545,4 +545,9 @@ private ReadLineStepResult(bool completed, string? result)
545545
public bool Completed { get; }
546546
public string? Result { get; }
547547
}
548+
549+
private void ThrowIfDisposed()
550+
{
551+
ObjectDisposedException.ThrowIf(_disposed, this);
552+
}
548553
}

src/Http/WebUtilities/src/HttpResponseStreamWriter.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ public HttpResponseStreamWriter(
105105
/// <inheritdoc/>
106106
public override void Write(char value)
107107
{
108-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpResponseStreamWriter));
108+
ThrowIfDisposed();
109109

110110
if (_charBufferCount == _charBufferSize)
111111
{
@@ -119,7 +119,7 @@ public override void Write(char value)
119119
/// <inheritdoc/>
120120
public override void Write(char[] values, int index, int count)
121121
{
122-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpResponseStreamWriter));
122+
ThrowIfDisposed();
123123

124124
if (values == null)
125125
{
@@ -140,7 +140,7 @@ public override void Write(char[] values, int index, int count)
140140
/// <inheritdoc/>
141141
public override void Write(ReadOnlySpan<char> value)
142142
{
143-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpResponseStreamWriter));
143+
ThrowIfDisposed();
144144

145145
var remaining = value.Length;
146146
while (remaining > 0)
@@ -160,7 +160,7 @@ public override void Write(ReadOnlySpan<char> value)
160160
/// <inheritdoc/>
161161
public override void Write(string? value)
162162
{
163-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpResponseStreamWriter));
163+
ThrowIfDisposed();
164164

165165
if (value == null)
166166
{
@@ -183,7 +183,7 @@ public override void Write(string? value)
183183
/// <inheritdoc/>
184184
public override void WriteLine(ReadOnlySpan<char> value)
185185
{
186-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpResponseStreamWriter));
186+
ThrowIfDisposed();
187187

188188
Write(value);
189189
Write(NewLine);
@@ -505,7 +505,7 @@ private async Task WriteLineAsyncAwaited(string value)
505505
/// <inheritdoc/>
506506
public override void Flush()
507507
{
508-
ObjectDisposedException.ThrowIf(_disposed, nameof(HttpResponseStreamWriter));
508+
ThrowIfDisposed();
509509

510510
FlushInternal(flushEncoder: true);
511511
}
@@ -673,4 +673,9 @@ private static Task GetObjectDisposedTask()
673673
{
674674
return Task.FromException(new ObjectDisposedException(nameof(HttpResponseStreamWriter)));
675675
}
676+
677+
private void ThrowIfDisposed()
678+
{
679+
ObjectDisposedException.ThrowIf(_disposed, this);
680+
}
676681
}

src/Http/WebUtilities/src/PagedByteBuffer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,6 @@ private void ClearBuffers()
136136

137137
private void ThrowIfDisposed()
138138
{
139-
ObjectDisposedException.ThrowIf(Disposed, nameof(PagedByteBuffer));
139+
ObjectDisposedException.ThrowIf(Disposed, this);
140140
}
141141
}

src/Servers/IIS/IIS/src/Core/WrappingStream.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public WrappingStream(Stream inner)
1515

1616
public void SetInnerStream(Stream inner)
1717
{
18-
ObjectDisposedException.ThrowIf(_disposed, nameof(WrappingStream));
18+
ObjectDisposedException.ThrowIf(_disposed, this);
1919

2020
_inner = inner;
2121
}

0 commit comments

Comments
 (0)