Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:11401 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 74916 invoked by uid 1010); 20 Jul 2004 21:55:26 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 74841 invoked from network); 20 Jul 2004 21:55:26 -0000 Received: from unknown (HELO web13423.mail.yahoo.com) (216.136.175.154) by pb1.pair.com with SMTP; 20 Jul 2004 21:55:26 -0000 Message-ID: <20040720215525.63006.qmail@web13423.mail.yahoo.com> Received: from [24.215.131.184] by web13423.mail.yahoo.com via HTTP; Tue, 20 Jul 2004 14:55:25 PDT Date: Tue, 20 Jul 2004 14:55:25 -0700 (PDT) To: internals@lists.php.net MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="0-623295543-1090360525=:62760" Subject: [PATCH] 5.0 ISAPI cookie string free fix (#28929) From: msisolak@yahoo.com (Michael Sisolak) --0-623295543-1090360525=:62760 Content-Type: text/plain; charset=us-ascii Content-Id: Content-Disposition: inline I believe that a bug was introduced with version 1.3 of php5isapi.c. The sapi_isapi_read_cookies() function used to return NULL when there were no cookies, but was changed to return "" instead. That's fine, but then HttpExtensionProc() attempts to free the non-ealloc'ed empty string and dies with an Access Violation. I believe this is the issue people are seeing in bug #28929. I've attached a patch for the PHP_5_0 branch that has sapi_isapi_read_cookes() return an empty_string constant, and uses STR_FREE to call efree() to protect the case of the empty_string value. For HEAD this patch would be easier becuase of the recent removal of empty_string - just return STR_EMPTY_ALLOC() and keep the efree() as is. Michael Sisolak msisolak@yahoo.com __________________________________ Do you Yahoo!? New and Improved Yahoo! Mail - Send 10MB messages! http://promotions.yahoo.com/new_mail --0-623295543-1090360525=:62760--