Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:14206 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 25592 invoked by uid 1010); 25 Dec 2004 03:22:16 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 25526 invoked from network); 25 Dec 2004 03:22:15 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 25 Dec 2004 03:22:15 -0000 X-Host-Fingerprint: 64.233.184.202 wproxy.gmail.com Linux 2.4/2.6 Received: from ([64.233.184.202:56170] helo=wproxy.gmail.com) by pb1.pair.com (ecelerity HEAD (r3985)) with SMTP id F0/E1-29078-7ECDCC14 for ; Fri, 24 Dec 2004 22:22:15 -0500 Received: by wproxy.gmail.com with SMTP id 36so93321wri for ; Fri, 24 Dec 2004 19:22:13 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:mime-version:content-type:content-transfer-encoding; b=Ev8Hw2vEhpk/ZJ9jTD0OeDICys5gHy+mPddzeg6rlXt/Wc0mgdWrMW1/LVJfod9msFlosDlo6hK7Ovkwvkk0cKRoL8w+6+PsHR1/d92zewrUcerqyE5l8CyshEQdMKC7++VIqXdIM3J5vyLy+MT0oGPnCaz9/LpM3IxFIBw8mrk= Received: by 10.54.17.13 with SMTP id 13mr211879wrq; Fri, 24 Dec 2004 19:22:13 -0800 (PST) Received: by 10.54.59.28 with HTTP; Fri, 24 Dec 2004 19:22:13 -0800 (PST) Message-ID: <4e89b42604122419221cb6e085@mail.gmail.com> Date: Fri, 24 Dec 2004 22:22:13 -0500 Reply-To: Wez Furlong To: internals , Andi Gutmans , Stanislav Malyshev Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: broken fix? From: kingwez@gmail.com (Wez Furlong) I've been working with Edin to try and track down what caused the sudden round of crashes in the COM extension in the latest 4.3 release, and it seems that the PZVAL_UNLOCK that Stas introduced in this commit: http://viewcvs.php.net/viewcvs.cgi/Zend/Attic/zend_execute.c.diff?r1=1.316.2.41&r2=1.316.2.42&hideattic=0 fix overloaded calls not returning result, e.g.: is to blame. If you counter-act the unlock in the COM call handler (setting is_ref and bumping the refcount), things work "fine". This is a hack, so I'm hoping that you engine gurus will divine the correct fix. A repro script is something like: $word = new COM('Word.Application'); $word->Documents->Open('somedoc.doc'); It's impossible for me to debug right now, as most of my boxen are still shipping from the UK, so I have no 4.3 build env on windows. --Wez.