summaryrefslogtreecommitdiff
path: root/win32/globals.c
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2013-03-14 05:42:27 +0000
committer <>2013-04-03 16:25:08 +0000
commitc4dd7a1a684490673e25aaf4fabec5df138854c4 (patch)
tree4d57c44caae4480efff02b90b9be86f44bf25409 /win32/globals.c
downloadphp2-c4dd7a1a684490673e25aaf4fabec5df138854c4.tar.gz
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'win32/globals.c')
-rw-r--r--win32/globals.c73
1 files changed, 73 insertions, 0 deletions
diff --git a/win32/globals.c b/win32/globals.c
new file mode 100644
index 0000000..1bbb3b4
--- /dev/null
+++ b/win32/globals.c
@@ -0,0 +1,73 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP Version 5 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997-2013 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 3.01 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available through the world-wide-web at the following url: |
+ | http://www.php.net/license/3_01.txt |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@php.net so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Author: Wez Furlong <wez@php.net> |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+#include "php.h"
+#include "php_win32_globals.h"
+#include "syslog.h"
+
+#ifdef ZTS
+PHPAPI int php_win32_core_globals_id;
+#else
+php_win32_core_globals the_php_win32_core_globals;
+#endif
+
+void php_win32_core_globals_ctor(void *vg TSRMLS_DC)
+{
+ php_win32_core_globals *wg = (php_win32_core_globals*)vg;
+ memset(wg, 0, sizeof(*wg));
+}
+
+void php_win32_core_globals_dtor(void *vg TSRMLS_DC)
+{
+ php_win32_core_globals *wg = (php_win32_core_globals*)vg;
+
+ if (wg->registry_key) {
+ RegCloseKey(wg->registry_key);
+ wg->registry_key = NULL;
+ }
+ if (wg->registry_event) {
+ CloseHandle(wg->registry_event);
+ wg->registry_event = NULL;
+ }
+ if (wg->registry_directories) {
+ zend_hash_destroy(wg->registry_directories);
+ free(wg->registry_directories);
+ wg->registry_directories = NULL;
+ }
+}
+
+
+PHP_RSHUTDOWN_FUNCTION(win32_core_globals)
+{
+ php_win32_core_globals *wg =
+#ifdef ZTS
+ ts_resource(php_win32_core_globals_id)
+#else
+ &the_php_win32_core_globals
+#endif
+ ;
+
+ closelog();
+ wg->starttime.tv_sec = 0;
+ wg->lasttime = 0;
+
+ return SUCCESS;
+}
+