Re: file.c fsock.c ... Again ...

From: Date: Sat, 13 Jan 2001 23:03:34 +0000
Subject: Re: file.c fsock.c ... Again ...
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-44006@lists.php.net to get a copy of this message
Hello, can you try the latest CVS? Zeev did some work on it today. Derick On Sat, 13 Jan 2001, Sean R. Bright wrote: > > Anyone see the logical problem with this besides me? > > #ifdef ZTS > static void file_globals_ctor(FLS_D) <--- THIS is defined if thread safe > { > zend_hash_init(&FG(ht_fsock_keys), 0, NULL, NULL, 1); > zend_hash_init(&FG(ht_fsock_socks), 0, NULL, (void (*)(void > *))php_msock_destroy, 1); > FG(def_chunk_size) = PHP_FSOCK_CHUNK_SIZE; > FG(phpsockbuf) = NULL; > FG(fgetss_state) = 0; > FG(pclose_ret) = 0; > } > static void file_globals_dtor(FLS_D) > { > zend_hash_destroy(&FG(ht_fsock_socks)); > zend_hash_destroy(&FG(ht_fsock_keys)); > php_cleanup_sockbuf(1 FLS_CC); > } > #endif > > PHP_MINIT_FUNCTION(file) > { > le_fopen = zend_register_list_destructors_ex(_file_fopen_dtor, NULL, > "file", module_number); > le_popen = zend_register_list_destructors_ex(_file_popen_dtor, NULL, > "pipe", module_number); > le_socket = zend_register_list_destructors_ex(_file_socket_dtor, > NULL, "socket", module_number); > > #ifdef ZTS > file_globals_id = ts_allocate_id(sizeof(php_file_globals), > (ts_allocate_ctor) file_globals_ctor, (ts_allocate_dtor) file_gl$ > #else > file_globals_ctor(FLS_C); <--- BUT is called when not thread safe > (i.e. its not defined... > #endif > > Errors happening: > > .libs/libphp4.a(file.o): In function `php_minit_file': > /usr/cvs/php4/ext/standard/file.c:179: undefined reference to > `file_globals_ctor' > .libs/libphp4.a(fsock.o): In function `php_mshutdown_fsock': > /usr/cvs/php4/ext/standard/fsock.c:726: undefined reference to > `fsock_globals_dtor' > collect2: ld returned 1 exit status > > >

« previous php.dev (#44006) next »