- Fixed #36625 pg_trace() does not work

This commit is contained in:
Marcus Boerger 2006-03-06 20:16:34 +00:00
parent 032edbfb92
commit 81954dcf78
2 changed files with 50 additions and 1 deletions

View File

@ -2360,7 +2360,7 @@ PHP_FUNCTION(pg_trace)
RETURN_FALSE;
}
if (FAILURE == php_stream_cast(stream, PHP_STREAM_AS_STDIO, (void**)fp, REPORT_ERRORS)) {
if (FAILURE == php_stream_cast(stream, PHP_STREAM_AS_STDIO, (void**)&fp, REPORT_ERRORS)) {
php_stream_close(stream);
RETURN_FALSE;
}

View File

@ -0,0 +1,49 @@
--TEST--
Bug #36625 (pg_trace() does not work)
--SKIPIF--
<?php
require_once('skipif.inc');
?>
--FILE--
<?php
require_once('config.inc');
$dbh = @pg_connect($conn_str);
if (!$dbh) {
die ('Could not connect to the server');
}
$tracefile = dirname(__FILE__) . '/trace.tmp';
@unlink($tracefile);
var_dump(file_exists($tracefile));
pg_trace($tracefile, 'w', $dbh);
$res = pg_query($dbh, 'select 1');
var_dump($res);
pg_close($dbh);
$found = 0;
function search_trace_file($line)
{
if (strpos($line, '"select 1"') !== false || strpos($line, "'select 1'") !== false) {
$GLOBALS['found']++;
}
}
$trace = file($tracefile);
array_walk($trace, 'search_trace_file');
var_dump($found > 0);
var_dump(file_exists($tracefile));
?>
===DONE===
--CLEAN--
<?php unlink($tracefile); ?>
--EXPECTF--
bool(false)
resource(%d) of type (pgsql result)
bool(true)
bool(true)
===DONE===