summaryrefslogtreecommitdiffstats
path: root/lib/private/db/mdb2schemawriter.php
diff options
context:
space:
mode:
authorThomas Müller <thomas.mueller@tmit.eu>2015-01-12 13:57:46 +0100
committerThomas Müller <thomas.mueller@tmit.eu>2015-01-12 16:28:11 +0100
commit1d2bef0a0116eefdd81221ba7502497845f0747b (patch)
treedeebc29175af5d851fc79cd6a373384b1baf7c00 /lib/private/db/mdb2schemawriter.php
parentddf81c2ed988ddce244fd60c2a3a08027e9c228e (diff)
downloadnextcloud-server-1d2bef0a0116eefdd81221ba7502497845f0747b.tar.gz
nextcloud-server-1d2bef0a0116eefdd81221ba7502497845f0747b.zip
Use a special filter expression for Oracle to filter the prefix - fixes #13220
Diffstat (limited to 'lib/private/db/mdb2schemawriter.php')
-rw-r--r--lib/private/db/mdb2schemawriter.php9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/private/db/mdb2schemawriter.php b/lib/private/db/mdb2schemawriter.php
index a42cd86ba54..1fb71ab398b 100644
--- a/lib/private/db/mdb2schemawriter.php
+++ b/lib/private/db/mdb2schemawriter.php
@@ -22,8 +22,13 @@ class OC_DB_MDB2SchemaWriter {
$xml->addChild('overwrite', 'false');
$xml->addChild('charset', 'utf8');
- $conn->getConfiguration()->
- setFilterSchemaAssetsExpression('/^' . $config->getSystemValue('dbtableprefix', 'oc_') . '/');
+ // FIX ME: bloody work around
+ if ($config->getSystemValue('dbtype', 'sqlite') === 'oci') {
+ $filterExpression = '/^"' . preg_quote($conn->getPrefix()) . '/';
+ } else {
+ $filterExpression = '/^' . preg_quote($conn->getPrefix()) . '/';
+ }
+ $conn->getConfiguration()->setFilterSchemaAssetsExpression($filterExpression);
foreach ($conn->getSchemaManager()->listTables() as $table) {
self::saveTable($table, $xml->addChild('table'));