set content length header if not already set

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35825 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
rfm 2012-11-27 11:32:32 +00:00
parent 86e6ebe7e7
commit eba1a7be03
3 changed files with 17 additions and 6 deletions

View file

@ -1,3 +1,8 @@
2012-11-27 Richard Frith-Macdonald <rfm@gnu.org>
* Source/GSHTTPURLHandle.m: Set content-length header in outgoing
request if not already set.
2012-11-25 14:39-EST Gregory John Casamento <greg.casamento@gmail.com> 2012-11-25 14:39-EST Gregory John Casamento <greg.casamento@gmail.com>
* Headers/Foundation/NSMetadata.h * Headers/Foundation/NSMetadata.h

View file

@ -404,11 +404,16 @@ debugWrite(GSHTTPURLHandle *handle, NSData *data)
} }
} }
if ([wData length] > 0) /* Ensure we set the correct content length (may be zero)
*/
if ((id)NSMapGet(wProperties, (void*)@"Content-Length") == nil)
{ {
NSMapInsert(wProperties, (void*)@"Content-Length", NSMapInsert(wProperties, (void*)@"Content-Length",
(void*)[NSString stringWithFormat: @"%d", [wData length]]); (void*)[NSString stringWithFormat: @"%d", [wData length]]);
}
if ([wData length] > 0)
{
/* /*
* Assume content type if not specified. * Assume content type if not specified.
*/ */
@ -418,6 +423,7 @@ debugWrite(GSHTTPURLHandle *handle, NSData *data)
(void*)@"application/x-www-form-urlencoded"); (void*)@"application/x-www-form-urlencoded");
} }
} }
if ((id)NSMapGet(wProperties, (void*)@"Authorization") == nil) if ((id)NSMapGet(wProperties, (void*)@"Authorization") == nil)
{ {
NSURLProtectionSpace *space; NSURLProtectionSpace *space;

View file

@ -24,10 +24,10 @@
AutogsdocSource: NSMetadata.m AutogsdocSource: NSMetadata.m
*/ */
#import <Foundation/NSMetadata.h> #import "Foundation/NSMetadata.h"
#import <Foundation/NSArray.h> #import "Foundation/NSArray.h"
#import <Foundation/NSDictionary.h> #import "Foundation/NSDictionary.h"
#import <Foundation/NSString.h> #import "Foundation/NSString.h"
#import "GNUstepBase/NSObject+GNUstepBase.h" #import "GNUstepBase/NSObject+GNUstepBase.h"
// Metadata item constants... // Metadata item constants...