Parse 'a\';' on webserver file separation
This commit is contained in:
parent
323f4ab34c
commit
f0d0bdbf39
|
@ -63,19 +63,19 @@ if (!$error && $_POST) {
|
|||
} else {
|
||||
preg_match('(' . preg_quote($delimiter) . "|$parse)", $query, $match, PREG_OFFSET_CAPTURE, $offset); // should always match
|
||||
$found = $match[0][0];
|
||||
$offset = $match[0][1] + strlen($found);
|
||||
if (!$found && $fp && !feof($fp)) {
|
||||
$query .= fread($fp, 1e5);
|
||||
} else {
|
||||
$offset = $match[0][1] + strlen($found);
|
||||
if (!$found && rtrim($query) == "") {
|
||||
break;
|
||||
}
|
||||
if ($found && $found != $delimiter) { // find matching quote or comment end
|
||||
while (preg_match('(' . ($found == '/*' ? '\\*/' : ($found == '[' ? ']' : (ereg('^-- |^#', $found) ? "\n" : preg_quote($found) . "|\\\\."))) . '|$)s', $query, $match, PREG_OFFSET_CAPTURE, $offset)) { //! respect sql_mode NO_BACKSLASH_ESCAPES
|
||||
$s = $match[0][0];
|
||||
$offset = $match[0][1] + strlen($s);
|
||||
$offset = $match[0][1] + ($s ? strlen($s) : -strlen($found)); // strlen($found) is higher than length of longest pattern minus one
|
||||
if (!$s && $fp && !feof($fp)) {
|
||||
$query .= fread($fp, 1e6);
|
||||
$query .= fread($fp, 1e5);
|
||||
} elseif ($s[0] != "\\") {
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
Adminer 3.3.2-dev:
|
||||
Display error with non-existent row in edit
|
||||
Fix minor parser bug in SQL command with webserver file
|
||||
Don't scroll with AJAX select order and alter move column
|
||||
Fast number of rows with big tables (PostgreSQL)
|
||||
Sort databases and schemas (PostgreSQL)
|
||||
|
|
Loading…
Reference in a new issue