another bunch of procname fixes

This commit is contained in:
roberto@djangocloud
2011-10-19 14:26:07 +10:00
parent 0065152bb1
commit cb5b26bcb4
2 changed files with 9 additions and 2 deletions
+3
View File
@@ -3224,14 +3224,17 @@ void uwsgi_set_processname(char *name) {
if (uwsgi.procname_prefix) {
amount += strlen(uwsgi.procname_prefix);
if ((int)amount > uwsgi.max_procname-1) return;
strncat(uwsgi.orig_argv[0], uwsgi.procname_prefix, uwsgi.max_procname-(amount+1));
}
amount += strlen(name);
if ((int)amount > uwsgi.max_procname-1) return;
strncat(uwsgi.orig_argv[0], name, (uwsgi.max_procname-amount+1));
if (uwsgi.procname_append) {
amount += strlen(uwsgi.procname_append);
if ((int)amount > uwsgi.max_procname-1) return;
strncat(uwsgi.orig_argv[0], uwsgi.procname_append, uwsgi.max_procname-(amount+1));
}
+6 -2
View File
@@ -879,15 +879,19 @@ void fixup_argv_and_environ(int argc, char **argv, char **environ) {
uwsgi.max_procname++;
for (i = 0; environ[i] != NULL; i++) {
if ((environ[0] + uwsgi.max_procname + 1) == environ[i]) {
// useless
//if ((environ[0] + uwsgi.max_procname + 1) == environ[i]) {
uwsgi.max_procname += strlen(environ[i]) + 1;
}
//}
env_count++;
}
uwsgi.environ = uwsgi_malloc(sizeof(char *) * env_count);
for(i=0;i<env_count;i++) {
uwsgi.environ[i] = strdup(environ[i]);
#ifdef UWSGI_DEBUG
uwsgi_log("ENVIRON: %s\n", uwsgi.environ[i]);
#endif
environ[i] = uwsgi.environ[i];
}