diff options
author | Mark Wells <mark@freeside.biz> | 2016-08-30 12:55:54 -0700 |
---|---|---|
committer | Mark Wells <mark@freeside.biz> | 2016-08-30 12:56:20 -0700 |
commit | d3e61b9cde2f31b7f5de990ec7fb182a70603a6e (patch) | |
tree | 3d42e7d4c222dfdc6311b6f92f2381a50f8c025e | |
parent | fba328864880d1375780b94911acd9ff33cba805 (diff) |
fix password_history schema upgrade from pre-3.8 versions, #72265
-rw-r--r-- | FS/FS/password_history.pm | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/FS/FS/password_history.pm b/FS/FS/password_history.pm index a34f6169b..13d16010d 100644 --- a/FS/FS/password_history.pm +++ b/FS/FS/password_history.pm @@ -161,9 +161,14 @@ sub password_equals { } sub _upgrade_schema { + my $class = shift; + # if the table doesn't exist yet then nothing needs to happen here + my $dbdef_table = $class->dbdef_table + or return; + # clean up history records where linked_acct has gone away my @where; - for my $fk ( grep /__/, __PACKAGE__->dbdef_table->columns ) { + for my $fk ( grep /__/, $dbdef_table->columns ) { my ($table, $key) = split(/__/, $fk); push @where, " ( $fk IS NOT NULL AND NOT EXISTS(SELECT 1 FROM $table WHERE $table.$key = $fk) )"; |