Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:14967 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 76829 invoked by uid 1010); 15 Feb 2005 12:57:36 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 76780 invoked from network); 15 Feb 2005 12:57:36 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 15 Feb 2005 12:57:36 -0000 X-Host-Fingerprint: 220.245.208.145 220-245-208-145-act.tpgi.com.au Received: from ([220.245.208.145:49238] helo=picard.newmillennium.net.au) by pb1.pair.com (ecelerity 1.2.11rc1 (r4431)) with SMTP id 77/00-08075-BB1F1124 for ; Tue, 15 Feb 2005 07:57:34 -0500 Received: from riker (riker.nmn.cafn [10.0.1.2]) by picard.newmillennium.net.au (8.13.1/8.13.1) with ESMTP id j1FAEqrr063370 for ; Tue, 15 Feb 2005 21:14:53 +1100 (EST) (envelope-from alastair@newmillennium.net.au) Sender: "Alastair D'Silva" To: Date: Tue, 15 Feb 2005 21:14:17 +1100 Organization: New Millennium Networking Message-ID: <006401c51347$1be0cbd0$0201000a@riker> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: quoted-printable X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook, Build 10.0.6626 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Importance: Normal Subject: Symbol clash between Tidy and ImageMagick From: php@newmillennium.net.au OK, heres another clash: (gdb) bt #0 0x28691f16 in GetToken () from /usr/local/lib/libMagick.so.7 #1 0x299c6198 in ParseDocument () from /usr/local/lib/libtidy-0.99.so.0 #2 0x299e1362 in tidyDocParseStream () from /usr/local/lib/libtidy-0.99.so.0 #3 0x299e0cbb in tidyDocParseString () from /usr/local/lib/libtidy-0.99.so.0 #4 0x299e09c4 in tidyParseString () from = /usr/local/lib/libtidy-0.99.so.0 #5 0x299a4b61 in zif_tidy_parse_string () from /usr/local/lib/php/20041030/tidy.so #6 0x08161db3 in zend_do_fcall_common_helper () #7 0x0816210e in zend_do_fcall_handler () #8 0x0814fe7e in execute () #9 0x08128064 in zend_execute_scripts () #10 0x080e8411 in php_execute_script () #11 0x00000000 in ?? () #12 0x00000003 in ?? () #13 0x00000000 in ?? () #14 0xbfbfe7b4 in ?? () #15 0x00000000 in ?? () #16 0x00000002 in ?? () #17 0x284d976c in ?? () from /lib/libc.so.6 #18 0x0828d700 in ?? () #19 0x00000080 in ?? () #20 0x0828d780 in ?? () #21 0x0812f5cd in _zend_hash_add_or_update () #22 0xbfbfe3d0 in ?? () #23 0x00000080 in ?? () #24 0x28467e4f in _UTF8_wcsnrtombs () from /lib/libc.so.6 Previous frame inner to this frame (corrupt stack?) Disabling ImageMagick allows Tidy to work properly. I really think that rather than sitting around pointing fingers at the developers of the libraries (and yes, I understand that they really = should be decorating all exported symbols), the PHP team should take steps to prevent these problems from happening by not loading all third party libraries (I count over 30 on my installation) into the same namespace. I still think that dlopen() and friends is the best way to tackle this = on platforms that support it - does anybody know of any PHP supported = platforms that don't support dlopen()? Other than the effort of converting the = current extensions (or at least, the ones with known clashes), is there any = reason not to try and work around these problems? --=20 Alastair D'Silva mob: 0413 485 733 Networking Consultant fax: 0413 181 661 New Millennium Networking web: http://www.newmillennium.net.au