summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnatoliy Belsky <ab@php.net>2012-04-26 15:17:46 +0200
committerAnatoliy Belsky <ab@php.net>2012-04-26 15:17:46 +0200
commit94d96f77826e46f114d4bc1777e1edcdfef002a2 (patch)
tree1dc830f7292ff5a2af6bb263bc5243bd4c42cb00
parent19df3c1b1c3bcb120ba63d3537e7177b8826fb96 (diff)
parent4daab0abecd5ee583c005d8e7b6affc08af8639d (diff)
downloadphp-git-94d96f77826e46f114d4bc1777e1edcdfef002a2.tar.gz
Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3: Fix bug #61791 ext\sqlite3\tests\sqlite3_15_open_error.phpt fails Conflicts: ext/sqlite3/tests/sqlite3_15_open_error.phpt
-rw-r--r--ext/sqlite3/tests/sqlite3_15_open_error-win.phpt37
-rw-r--r--ext/sqlite3/tests/sqlite3_15_open_error.phpt3
2 files changed, 40 insertions, 0 deletions
diff --git a/ext/sqlite3/tests/sqlite3_15_open_error-win.phpt b/ext/sqlite3/tests/sqlite3_15_open_error-win.phpt
new file mode 100644
index 0000000000..6289fac849
--- /dev/null
+++ b/ext/sqlite3/tests/sqlite3_15_open_error-win.phpt
@@ -0,0 +1,37 @@
+--TEST--
+SQLite3::open error test
+--SKIPIF--
+<?php
+if(substr(PHP_OS, 0, 3) != 'WIN' ) {
+ die('skip windows only test');
+}
+require_once(__DIR__ . '/skipif.inc');
+?>
+--FILE--
+<?php
+$sysroot = exec('echo %systemroot%');
+$icacls = "$sysroot\\System32\\icacls.exe";
+$user = get_current_user();
+$unreadable = __DIR__ . '/unreadable.db';
+
+touch($unreadable);
+$cmd = $icacls . ' ' . $unreadable . ' /inheritance:r /deny ' . $user . ':(F,M,R,RX,W)';
+exec($cmd);
+
+try {
+ $db = new SQLite3($unreadable);
+} catch (Exception $e) {
+ echo $e . "\n";
+}
+echo "Done\n";
+
+$cmd = $icacls . ' ' . $unreadable . ' /grant ' . $user . ':(F,M,R,RX,W)';
+exec($cmd);
+unlink($unreadable);
+?>
+--EXPECTF--
+exception 'Exception' with message 'Unable to open database: %s' in %ssqlite3_15_open_error-win.php:%d
+Stack trace:
+#0 %ssqlite3_15_open_error-win.php(%d): SQLite3->__construct('%s')
+#1 {main}
+Done
diff --git a/ext/sqlite3/tests/sqlite3_15_open_error.phpt b/ext/sqlite3/tests/sqlite3_15_open_error.phpt
index ea1ee42992..fc05b87802 100644
--- a/ext/sqlite3/tests/sqlite3_15_open_error.phpt
+++ b/ext/sqlite3/tests/sqlite3_15_open_error.phpt
@@ -2,6 +2,9 @@
SQLite3::open error test
--SKIPIF--
<?php
+if(substr(PHP_OS, 0, 3) == 'WIN' ) {
+ die('skip non windows test');
+}
require_once(__DIR__ . '/skipif.inc');
if (posix_geteuid() == 0) {
die('SKIP Cannot run test as root.');