summaryrefslogtreecommitdiffstats
path: root/Bugzilla
diff options
context:
space:
mode:
authorPat Thoyts <patthoyts@users.sourceforge.net>2015-09-23 23:12:25 +0200
committerFrédéric Buclin <LpSolit@gmail.com>2015-09-23 23:12:25 +0200
commitcdcb6f1f12aff458c43432856a33525f65909276 (patch)
tree0b4ce0fe5a19bb037c397b0f6ff96afc8b1d83e2 /Bugzilla
parent94b44ff97a7657c38dc875dee4d7b679b1bb4e42 (diff)
downloadbugzilla-cdcb6f1f12aff458c43432856a33525f65909276.tar.gz
bugzilla-cdcb6f1f12aff458c43432856a33525f65909276.tar.xz
Bug 708252: The XMLRPC API doesn't work with IIS
r=LpSolit
Diffstat (limited to 'Bugzilla')
-rw-r--r--Bugzilla/WebService/Server/XMLRPC.pm8
1 files changed, 8 insertions, 0 deletions
diff --git a/Bugzilla/WebService/Server/XMLRPC.pm b/Bugzilla/WebService/Server/XMLRPC.pm
index c28c3e10c..33949ead0 100644
--- a/Bugzilla/WebService/Server/XMLRPC.pm
+++ b/Bugzilla/WebService/Server/XMLRPC.pm
@@ -63,6 +63,12 @@ sub make_response {
my $self = shift;
my $cgi = Bugzilla->cgi;
+ # Fix various problems with IIS.
+ if ($ENV{'SERVER_SOFTWARE'} =~ /IIS/) {
+ $ENV{CONTENT_LENGTH} = 0;
+ binmode(STDOUT, ':bytes');
+ }
+
$self->SUPER::make_response(@_);
# XMLRPC::Transport::HTTP::CGI doesn't know about Bugzilla carrying around
@@ -110,6 +116,8 @@ sub handle_login {
if (none { $_ eq $method } $class->PUBLIC_METHODS) {
ThrowCodeError('unknown_method', { method => $full_method });
}
+
+ $ENV{CONTENT_LENGTH} = 0 if $ENV{'SERVER_SOFTWARE'} =~ /IIS/;
$self->SUPER::handle_login($class, $method, $full_method);
return;
}