Browse Source

Add magic_quotes_runtime support

experimental/threaded
Marcus Boerger 24 years ago
parent
commit
a14bc7685d
  1. 4
      ext/dba/dba.c
  2. 25
      ext/dba/tests/dba008.phpt

4
ext/dba/dba.c

@ -36,6 +36,7 @@
#include "php_dba.h"
#include "ext/standard/info.h"
#include "ext/standard/php_string.h"
#include "php_gdbm.h"
#include "php_ndbm.h"
@ -613,6 +614,9 @@ PHP_FUNCTION(dba_fetch)
php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Handler %s does not support optional skip parameter", info->hnd->name);
}
if((val = info->hnd->fetch(info, VALLEN(key), skip, &len TSRMLS_CC)) != NULL) {
if (val && PG(magic_quotes_runtime)) {
val = php_addslashes(val, len, &len, 1 TSRMLS_CC);
}
RETURN_STRINGL(val, len, 0);
}
RETURN_FALSE;

25
ext/dba/tests/dba008.phpt

@ -0,0 +1,25 @@
--TEST--
DBA magic_quotes_runtime Test
--SKIPIF--
<?php
require_once('skipif.inc');
?>
--FILE--
<?php
require_once('test.inc');
echo "database handler: $handler\n";
if (($db_file=dba_open($db_file, "n", $handler))!==FALSE) {
dba_insert("key1", '"', $db_file);
ini_set('magic_quotes_runtime', 0);
var_dump(dba_fetch("key1", $db_file));
ini_set('magic_quotes_runtime', 1);
var_dump(dba_fetch("key1", $db_file));
dba_close($db_file);
} else {
echo "Error creating database\n";
}
?>
--EXPECTF--
database handler: %s
string(1) """
string(2) "\""
Loading…
Cancel
Save