summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--third_party/mongoose/README.chromium1
-rw-r--r--third_party/mongoose/chrome-mongoose-modifications.diff19
-rw-r--r--third_party/mongoose/mongoose.c4
3 files changed, 24 insertions, 0 deletions
diff --git a/third_party/mongoose/README.chromium b/third_party/mongoose/README.chromium
index 97e264a..637721c 100644
--- a/third_party/mongoose/README.chromium
+++ b/third_party/mongoose/README.chromium
@@ -25,3 +25,4 @@ pending upstreaming by danielwh):
* Don't ignore SIGCHLD, since the proxy launcher depends on it for determining
chrome's exit code.
* Removed a "set but never used" variable, to fix build for gcc 4.6.
+* Fixed a compiler warning (-Wmaybe-uninitialized).
diff --git a/third_party/mongoose/chrome-mongoose-modifications.diff b/third_party/mongoose/chrome-mongoose-modifications.diff
index 0f80a8b..b37162d 100644
--- a/third_party/mongoose/chrome-mongoose-modifications.diff
+++ b/third_party/mongoose/chrome-mongoose-modifications.diff
@@ -108,3 +108,22 @@ diff --git a/third_party/mongoose/mongoose.c b/third_party/mongoose/mongoose.c
// Forward client's request to the target
mg_printf(conn->peer, "%s %s HTTP/%s\r\n", ri->request_method, ri->uri + len,
ri->http_version);
+@@ -2820,6 +2820,8 @@ static void prepare_cgi_environment(struct mg_connection *conn,
+ blk->len = blk->nvars = 0;
+ blk->conn = conn;
+
++ memset(&root, 0, sizeof(root));
++
+ get_document_root(conn, &root);
+
+ addenv(blk, "SERVER_NAME=%s", conn->ctx->config[AUTHENTICATION_DOMAIN]);
+@@ -2916,6 +2918,8 @@ static void handle_cgi_request(struct mg_connection *conn, const char *prog) {
+ FILE *in, *out;
+ pid_t pid;
+
++ memset(&ri, 0, sizeof(ri));
++
+ prepare_cgi_environment(conn, prog, &blk);
+
+ // CGI must be executed in its own directory. 'dir' must point to the
+
diff --git a/third_party/mongoose/mongoose.c b/third_party/mongoose/mongoose.c
index bdf70618..67ec9bd 100644
--- a/third_party/mongoose/mongoose.c
+++ b/third_party/mongoose/mongoose.c
@@ -2820,6 +2820,8 @@ static void prepare_cgi_environment(struct mg_connection *conn,
blk->len = blk->nvars = 0;
blk->conn = conn;
+ memset(&root, 0, sizeof(root));
+
get_document_root(conn, &root);
addenv(blk, "SERVER_NAME=%s", conn->ctx->config[AUTHENTICATION_DOMAIN]);
@@ -2916,6 +2918,8 @@ static void handle_cgi_request(struct mg_connection *conn, const char *prog) {
FILE *in, *out;
pid_t pid;
+ memset(&ri, 0, sizeof(ri));
+
prepare_cgi_environment(conn, prog, &blk);
// CGI must be executed in its own directory. 'dir' must point to the