Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:10816 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 87726 invoked by uid 1010); 28 Jun 2004 11:19:02 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 87675 invoked from network); 28 Jun 2004 11:19:01 -0000 Received: from unknown (HELO BLR-DSMASTER.BLR.NOVELL.COM) (202.144.86.147) by pb1.pair.com with SMTP; 28 Jun 2004 11:19:01 -0000 Received: from user-00065b7dc3b8.blr.novell.com (linux00065b7dc3b8.blr.novell.com [164.99.145.41]) by BLR-DSMASTER.BLR.NOVELL.COM; Mon, 28 Jun 2004 11:46:19 +0530 Reply-To: kameshj@fastmail.fm To: internals@lists.php.net Content-Type: text/plain Message-ID: <1088403411.2271.1.camel@linux.local> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.4 Date: Mon, 28 Jun 2004 11:46:51 +0530 Content-Transfer-Encoding: 7bit Subject: issue in copying the hash table(Reposted third time) From: kameshj@fastmail.fm (Kamesh Jayachandran) Hi All, Sorry to repost for the third time. I want the clarification regarding copying the global_class_table to thread specific compiler_globals->class_table in compiler_globals_ctor in Zend/zend.c. According to me memcpy should copy 'whatever source points to' to 'destination'. Our class_table hashtable structure looks like this, char *key; zend_class_entry** value; So memcpy should copy only whatever (zend_class_entry**) points to which is semantically wrong good candidate for Segmentation fault. No way memcpy can do double dereferencing for this case. Somehow in Linux when i compile it with maintainer-zts-mode memcpy copies the data fine. I verified all the internal classes. Thread specific class_table is in sink with the global_class_table. Please clarify. Thanks in Advance With regards Kamesh Jayachandran