summaryrefslogtreecommitdiff
path: root/ext/standard/basic_functions.h
diff options
context:
space:
mode:
authorSascha Schumann <sas@php.net>1999-11-28 00:31:02 +0000
committerSascha Schumann <sas@php.net>1999-11-28 00:31:02 +0000
commit6216edda44a6bac3a3f89e0b4d441a03c0ecc590 (patch)
tree05f0d5f5f967ace30416daa8efe8865d665ab9fd /ext/standard/basic_functions.h
parent883e219beffb35eede465f7da5827048ff99b1c8 (diff)
downloadphp-git-6216edda44a6bac3a3f89e0b4d441a03c0ecc590.tar.gz
Make basic/string functions thread-safe
Diffstat (limited to 'ext/standard/basic_functions.h')
-rw-r--r--ext/standard/basic_functions.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/ext/standard/basic_functions.h b/ext/standard/basic_functions.h
index 6d1e778db6..2fe14c8bfb 100644
--- a/ext/standard/basic_functions.h
+++ b/ext/standard/basic_functions.h
@@ -103,6 +103,32 @@ PHP_FUNCTION(getservbyport);
PHP_FUNCTION(getprotobyname);
PHP_FUNCTION(getprotobynumber);
+typedef struct {
+ HashTable *user_shutdown_function_names;
+ HashTable putenv_ht;
+ char *strtok_string;
+ char *locale_string;
+ char *strtok_pos1;
+ char *strtok_pos2;
+ char str_ebuf[40];
+} php_basic_globals;
+
+#ifdef ZTS
+#define BLS_D php_basic_globals *basic_globals
+#define BLS_DC , BLS_D
+#define BLS_C basic_globals
+#define BLS_CC , BLS_C
+#define BG(v) (basic_globals->v)
+#define BLS_FETCH() php_basic_globals *basic_globals = ts_resource(basic_globals_id)
+#else
+#define BLS_D
+#define BLS_DC
+#define BLS_C
+#define BLS_CC
+#define BG(v) (basic_globals.v)
+#define BLS_FETCH()
+#endif
+
#if HAVE_PUTENV
typedef struct {
char *putenv_string;