Commits

Ruslan Osmanov committed e0c7427

Preparing for event-1.7.3

Comments (0)

Files changed (2)

     <email>osmanov@php.net</email>
     <active>yes</active>
   </lead>
-  <date>2013-07-29</date>
+  <date>2013-08-09</date>
   <!--{{{ Current version -->
   <version>
     <release>1.7.3</release>
   <license uri="http://www.php.net/license">PHP</license>
   <notes><![CDATA[
   Fix: in php_event.c write_property function wasn't static
+  Fix: absence of get_gc property handler caused segfaults with gc_collect_cycles()
   ]]></notes>
   <!--}}}-->
   <!--{{{ Contents -->
         <file role="src" name="08-buffer.phpt"/>
         <file role="src" name="09-gc-cycles.phpt"/>
         <file role="src" name="10-event-data-dtor.phpt"/>
+        <file role="src" name="11-gc-cycles.phpt"/>
       </dir>
     </dir>
   </contents>
   </extsrcrelease>
   <!--{{{ changelog-->
   <changelog>
-    <!--{{{ Current version -->
+    <!--{{{ 1.7.3 -->
     <release>
       <version>
         <release>1.7.3</release>
       <license uri="http://www.php.net/license">PHP</license>
       <notes><![CDATA[
   Fix: in php_event.c write_property function wasn't static
+  Fix: absence of get_gc property handler caused segfaults with gc_collect_cycles()
   ]]></notes>
     </release>
     <!--}}}-->

tests/11-gc-cycles.phpt

+--TEST--
+Check for get_gc property handler
+--FILE--
+<?php
+ 
+class x {
+        public $t = null;
+ 
+        public function __construct() {
+                $this->t = Event::timer(new EventBase(), function () { });
+                $this->t->free();
+        }
+}
+ 
+
+echo "1";
+new x();
+gc_collect_cycles();
+echo "2"; // we had segfault here
+?>
+--EXPECT--
+12
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.