summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs b/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs
index 8bcae3e..42eb53b 100644
--- a/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs
+++ b/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs
@@ -319,10 +319,16 @@ namespace DotNetOpenAuth.OAuth.ChannelElements {
httpRequest.Headers.Add(HttpRequestHeader.Authorization, authorization.ToString());
- // WARNING: We only set up the request stream for the caller if there is
- // extra data. If there isn't any extra data, the caller must do this themselves.
- if (hasEntity && requestMessage.ExtraData.Count > 0) {
- SendParametersInEntity(httpRequest, requestMessage.ExtraData);
+ if (hasEntity) {
+ // WARNING: We only set up the request stream for the caller if there is
+ // extra data. If there isn't any extra data, the caller must do this themselves.
+ if (requestMessage.ExtraData.Count > 0) {
+ SendParametersInEntity(httpRequest, requestMessage.ExtraData);
+ } else {
+ // We'll assume the content length is zero since the caller may not have
+ // anything. They're responsible to change it when the add the payload if they have one.
+ httpRequest.ContentLength = 0;
+ }
}
return httpRequest;