|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
Patchespdorealloc (last revision 2014-08-27 18:18 UTC by pm at datasphere dot ch)Pull RequestsHistoryAllCommentsChangesGit/SVN commits
[2020-04-07 09:34 UTC] cmb@php.net
-Status: Open
+Status: Feedback
-Assigned To:
+Assigned To: cmb
[2020-04-07 09:34 UTC] cmb@php.net
[2020-04-19 04:22 UTC] php-bugs at lists dot php dot net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sun Oct 26 01:00:01 2025 UTC |
Description: ------------ When a out/inout bound parameter is set to a string constant before executing a prepared executed statement, a call to erealloc() on it fails. Test script: --------------- <?php try { $conn = new PDO("odbc:<yourdatabaseDSN>"); } catch (PDOException $e) { print "Error!: " . $e->getMessage() . "\n"; die(); } /* Adjust the SQL statement below to your test environment. */ $stmt = $conn->prepare("CALL LIBRARY.GETDB(? , ?)"); $intvalue = 10; $strvalue = "abc"; $stmt->bindParam(1, $intvalue, PDO::PARAM_INT|PDO::PARAM_INPUT_OUTPUT, 4); $stmt->bindParam(2, $strvalue, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 100); print "before execute\n"; $res = $stmt->execute(); print "after execute\n"; var_dump($intvalue); var_dump($strvalue); ?> Expected result: ---------------- Proper execution and normal program exit Actual result: -------------- zend_mm_heap corrupted