From c4dd7a1a684490673e25aaf4fabec5df138854c4 Mon Sep 17 00:00:00 2001 From: Lorry Tar Creator Date: Thu, 14 Mar 2013 05:42:27 +0000 Subject: Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2. --- win32/globals.c | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 win32/globals.c (limited to 'win32/globals.c') 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 | + +----------------------------------------------------------------------+ +*/ + +/* $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; +} + -- cgit v1.2.1