aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--local.c8
2 files changed, 14 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 37672e6..8876f9c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * [w3m-dev 03495] local CGI can't work
+ * local.c: #include "hash.h"
+ (set_environ): env string put in hash
+
+2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
* [w3m-dev 03494] Number of line is few when pager mode.
* display.c (redrawLine): buf->rootY
@@ -5220,4 +5226,4 @@ a * [w3m-dev 03276] compile error on EWS4800
* release-0-2-1
* import w3m-0.2.1
-$Id: ChangeLog,v 1.567 2002/11/27 16:32:51 ukai Exp $
+$Id: ChangeLog,v 1.568 2002/11/27 16:35:18 ukai Exp $
diff --git a/local.c b/local.c
index 910c187..bfc886e 100644
--- a/local.c
+++ b/local.c
@@ -1,4 +1,4 @@
-/* $Id: local.c,v 1.15 2002/11/26 18:03:26 ukai Exp $ */
+/* $Id: local.c,v 1.16 2002/11/27 16:35:18 ukai Exp $ */
#include "fm.h"
#include <string.h>
#include <stdio.h>
@@ -14,6 +14,7 @@
#include <limits.h> /* _MAX_PATH ? */
#endif /* __EMX__ */
#include "local.h"
+#include "hash.h"
#define CGIFN_NORMAL 0
#define CGIFN_DROOT 1
@@ -214,7 +215,12 @@ set_environ(char *var, char *value)
setenv(var, value, 1);
#else /* not HAVE_SETENV */
#ifdef HAVE_PUTENV
+ static Hash_sv *env_hash = NULL;
Str tmp = Strnew_m_charp(var, "=", value, NULL);
+
+ if (env_hash == NULL)
+ env_hash = newHash_sv(20);
+ putHash_sv(env_hash, var, (void *)tmp->ptr);
putenv(tmp->ptr);
#else /* not HAVE_PUTENV */
extern char **environ;