Skip to content

Commit

Permalink
Fixed valgrind issue
Browse files Browse the repository at this point in the history
  • Loading branch information
Tianfang Yang committed Oct 16, 2017
1 parent 7778106 commit aad4544
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 13 deletions.
3 changes: 3 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ PHP NEWS
. Fixed bug #75301 (Exif extension has built in revision version). (Peter
Kokot)

- OCI8:
. Fixed valgrind issue. (Tianfang Yang)

- OpenSSL:
. Fixed bug #75363 (openssl_x509_parse leaks memory). (Bob, Jakub Zelenka)

Expand Down
15 changes: 8 additions & 7 deletions ext/oci8/oci8_interface.c
Original file line number Diff line number Diff line change
Expand Up @@ -1611,14 +1611,15 @@ PHP_FUNCTION(oci_close)
}

PHP_OCI_ZVAL_TO_CONNECTION(z_connection, connection);
if (GC_REFCOUNT(connection->id) == 2) /* CHANGED VERSION::PHP7
Changed the refCount to 2 since
internally Zend engine increments
RefCount value by 1 */
if (GC_REFCOUNT(connection->id) == 2) { /* CHANGED VERSION::PHP7
Changed the refCount to 2 since
internally Zend engine increments
RefCount value by 1 */
/* Unregister Oracle TAF */
php_oci_unregister_taf_callback(connection);

zend_list_close(connection->id);

/* Unregister Oracle TAF */
php_oci_unregister_taf_callback(connection);
}

/* ZVAL_NULL(z_connection); */

Expand Down
22 changes: 19 additions & 3 deletions ext/oci8/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,8 @@ Interoperability Support" (ID 207303.1) for details.
<time>12:00:00</time>

<version>
<release>2.1.7</release>
<api>2.1.7</api>
<release>2.1.8</release>
<api>2.1.8</api>
</version>
<stability>
<release>stable</release>
Expand All @@ -66,7 +66,7 @@ Interoperability Support" (ID 207303.1) for details.
<license uri="http://www.php.net/license">PHP</license>
<notes>
This version is for PHP 7 only.
Added oci_unregister_taf_callback()
Fixed reference counting and memory issues. (Dmitry, Tianfang)
</notes>
<contents>
<dir name="/">
Expand Down Expand Up @@ -476,6 +476,22 @@ Added oci_unregister_taf_callback()
</extsrcrelease>
<changelog>

<release>
<version>
<release>2.1.7</release>
<api>2.1.7</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://www.php.net/license">PHP</license>
<notes>
This version is for PHP 7 only.
Added oci_unregister_taf_callback()
</notes>
</release>

<release>
<version>
<release>2.1.6</release>
Expand Down
6 changes: 3 additions & 3 deletions ext/oci8/tests/driver_name.phpt
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@ function get_attr($conn)
?>
--EXPECT--
**Test 1.1 - Default values for the attribute **************
The value of DRIVER_NAME is PHP OCI8 : 2.1.7
The value of DRIVER_NAME is PHP OCI8 : 2.1.8

***Test 1.2 - Get the values from different connections **************
Testing with oci_pconnect()
The value of DRIVER_NAME is PHP OCI8 : 2.1.7
The value of DRIVER_NAME is PHP OCI8 : 2.1.8
Testing with oci_new_connect()
The value of DRIVER_NAME is PHP OCI8 : 2.1.7
The value of DRIVER_NAME is PHP OCI8 : 2.1.8
Done

0 comments on commit aad4544

Please sign in to comment.