$allqueries[] = 'ALTER TABLE {' . $tablename . '} RENAME TO {' .
$tablename . '}__temp;';
Was changed to:
$allqueries[]= 'ALTER TABLE {$tablename} RENAME TO {$tablename}__temp;';
The braces in the query enclose a table name that is processed by the
databaseconnection to be replaced with a table name that has the
config's table prefix applied. So this:
"SELECT * FROM {posts}"
Gets expanded to this:
"SELECT * FROM habari__posts"
If the prefix happens to be "habari__".
Also, since the changed line uses single-quotes, the tablename won't
even be expanded in the query, so it should cause all kinds of errors
when it tries to update a SQLite database.
Did anyone test this code? Maybe I'm missing something huge.
Owen
I think there has been a couple of subsequent commits that address these
issues. I haven't tested them myself yet.
Also, I see what you're saying, since the schema files don't have the
table names, and actually use a different method to apply the prefix
altogether.
Someone's going to have to test all this out and make sure it works
before release. Nobody likes SQLite being broken. :(
Owen