diff options
author | Dries Buytaert <dries@buytaert.net> | 2008-12-05 12:41:27 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2008-12-05 12:41:27 +0000 |
commit | 4e9d1f7d1c97600113edc7bba3f49b59d0bdcb20 (patch) | |
tree | 958ab6eaf868d3745bee44f45988f985995b4c3a /includes | |
parent | 5a53f843d7070d80a2a2f6b50cdf91c601ca76f9 (diff) | |
download | brdo-4e9d1f7d1c97600113edc7bba3f49b59d0bdcb20.tar.gz brdo-4e9d1f7d1c97600113edc7bba3f49b59d0bdcb20.tar.bz2 |
- Patch #342366 by John Morahan, Dave Reid, Damien Tournoud: fixed replacement of unnamed placeholders in SQLite.
Diffstat (limited to 'includes')
-rw-r--r-- | includes/database/sqlite/database.inc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/includes/database/sqlite/database.inc b/includes/database/sqlite/database.inc index f8b41eb31..b918440b5 100644 --- a/includes/database/sqlite/database.inc +++ b/includes/database/sqlite/database.inc @@ -198,7 +198,10 @@ class DatabaseStatement_sqlite extends DatabaseStatementPrefetch implements Iter // Else, this is using named placeholders. foreach ($args as $placeholder => $value) { if (is_numeric($value)) { - $query = str_replace($placeholder, $value, $query); + // When replacing the placeholders, make sure we search for the + // exact placeholder. For example, if searching for + // ':db_placeholder_1', do not replace ':db_placeholder_11'. + $query = preg_replace('/' . preg_quote($placeholder) . '\b/', $value, $query); unset($args[$placeholder]); } } |