summaryrefslogtreecommitdiffstats
path: root/Bugzilla
diff options
context:
space:
mode:
authorMax Kanat-Alexander <mkanat@bugzilla.org>2010-11-03 00:39:57 +0100
committerMax Kanat-Alexander <mkanat@bugzilla.org>2010-11-03 00:39:57 +0100
commit6fbfafbbec8ada22dde6903d0e02f9d3876fa1c1 (patch)
tree8b3f62a677e87c4ff52dff7e0148c426df5209c6 /Bugzilla
parent3f3cc3c9ac50a9e43fc98dfd84c675ba22ada22b (diff)
downloadbugzilla-6fbfafbbec8ada22dde6903d0e02f9d3876fa1c1.tar.gz
bugzilla-6fbfafbbec8ada22dde6903d0e02f9d3876fa1c1.tar.xz
The changes to bz_create_database done by the SQLite patch broke the
creation of databases on other systems. This restores the original behavior while still retaining the correct error-throwing behavior for systems that can't create a SQLite database. https://bugzilla.mozilla.org/show_bug.cgi?id=337776
Diffstat (limited to 'Bugzilla')
-rw-r--r--Bugzilla/DB.pm2
-rw-r--r--Bugzilla/DB/Schema/Sqlite.pm9
2 files changed, 10 insertions, 1 deletions
diff --git a/Bugzilla/DB.pm b/Bugzilla/DB.pm
index ae9fffd3a..0a3123ee9 100644
--- a/Bugzilla/DB.pm
+++ b/Bugzilla/DB.pm
@@ -232,7 +232,7 @@ EOT
sub bz_create_database {
my $dbh;
# See if we can connect to the actual Bugzilla database.
- my $conn_success = $dbh = connect_main();
+ my $conn_success = eval { $dbh = connect_main() };
my $db_name = Bugzilla->localconfig->{db_name};
if (!$conn_success) {
diff --git a/Bugzilla/DB/Schema/Sqlite.pm b/Bugzilla/DB/Schema/Sqlite.pm
index 8f8af3803..171f6217c 100644
--- a/Bugzilla/DB/Schema/Sqlite.pm
+++ b/Bugzilla/DB/Schema/Sqlite.pm
@@ -64,6 +64,15 @@ sub _initialize {
}
+sub get_create_database_sql {
+ # If we get here, it means there was some error creating the
+ # database file during bz_create_database in Bugzilla::DB,
+ # and we just want to display that error instead of doing
+ # anything else.
+ Bugzilla->dbh;
+ die "Reached an unreachable point";
+}
+
sub get_type_ddl {
my $self = shift;
my $def = dclone($_[0]);