xref: /PHP-8.1/ext/mysqli/tests/bug71863.phpt (revision b5a14e6c)
1--TEST--
2Bug #71863 Segfault when EXPLAIN with "Unknown Column" Error
3--EXTENSIONS--
4mysqli
5--SKIPIF--
6<?php
7require_once('skipifconnectfailure.inc');
8require_once("connect.inc");
9if (!$IS_MYSQLND) {
10    die("skip mysqlnd only test");
11}
12?>
13--FILE--
14<?php
15require_once("connect.inc");
16
17$req = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket);
18
19// create db and table for test
20mysqli_query($req, "DROP TABLE IF EXISTS test_bug_71863") or die(mysqli_error($req));
21mysqli_query($req, "CREATE TABLE test_bug_71863 (id INT UNSIGNED NOT NULL DEFAULT 0)") or die(mysqli_error($req));
22
23// segfault if EXPLAIN + "Unknown column" error
24mysqli_query($req, "EXPLAIN SELECT `id` FROM `test_bug_71863` WHERE `owner_id` = '2' AND `object_id` = '1' AND type = '0'") or die(mysqli_error($req)."\n");
25
26?>
27--CLEAN--
28<?php
29require_once("connect.inc");
30if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
31    printf("[c001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
32if (!mysqli_query($link, "DROP TABLE IF EXISTS test_bug_71863"))
33    printf("[c002] Cannot drop table, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
34mysqli_close($link);
35?>
36--EXPECTF--
37%AUnknown column 'owner_id' in 'where clause'
38