]> Cypherpunks repositories - gostls13.git/commit
http/cgi: clean up environment.
authorYasuhiro Matsumoto <mattn.jp@gmail.com>
Fri, 16 Sep 2011 17:36:54 +0000 (10:36 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Fri, 16 Sep 2011 17:36:54 +0000 (10:36 -0700)
commit048ec75801156d9cd10991cca741935b17a9041f
tree83e2c741e35ec4feb3c1561719a668eda7c152f4
parenta083fd524ad83dc46552cf1f8673a7683c3edde1
http/cgi: clean up environment.
clean up duplicate environment for CGI.
overriding former by latter.
On windows, When there are duplicated environments like following,

SCRIPT_FILENAME=c:/progra~1/php/php-cgi.exe
SCRIPT_FILENAME=/foo.php

CreateProcess use first entry.

If make cgi.Handle like following,

        cgih = cgi.Handler{
                Path: "c:/strawberry/perl/bin/perl.exe",
                Dir:  "c:/path/to/webroot",
                Root: "c:/path/to/webroot",
                Args: []string{"foo.php"},
                Env:  []string{"SCRIPT_FILENAME=foo.php"},
        }

http/cgi should behave "SCRIPT_FILENAME is foo.php".
But currently, http/cgi is set duplicate environment entries.
So, browser show binary dump of "php-cgi.exe" that is specified indented
SCRIPT_FILENAME in first entry.
This change clean up duplicates, and use latters.

R=golang-dev, bradfitz, bradfitz
CC=golang-dev
https://golang.org/cl/5010044
src/pkg/http/cgi/host.go
src/pkg/http/cgi/host_test.go