Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 18a9b190

Von Moritz Bunkus vor etwa 14 Jahren hinzugefügt

  • ID 18a9b190c4f03ff02bfc5eae1fc253116cabe02f
  • Vorgänger 3d8ff439
  • Nachfolger ea502a0b

Fix für: Datenbankverbindungen bei identischen Verbindungseinstellungen nur einmal bei Rose registrieren

Unterschiede anzeigen:

SL/DB.pm
});
}
my %flattened_settings = _flatten_settings(%connect_settings);
$domain = 'LXOFFICE' if $type =~ m/^LXOFFICE/;
$type .= join($SUBSCRIPT_SEPARATOR, map { $::connect_setings{$_} } sort keys %connect_settings);
$type .= join($SUBSCRIPT_SEPARATOR, map { ($_, $flattened_settings{$_}) } sort keys %flattened_settings);
my $idx = "${domain}::${type}";
if (!$_db_registered{$idx}) {
......
return ($domain, $type);
}
sub _flatten_settings {
my %settings = @_;
my %flattened = ();
while (my ($key, $value) = each %settings) {
if ('HASH' eq ref $value) {
%flattened = ( %flattened, _flatten_settings(%{ $value }) );
} else {
$flattened{$key} = $value;
}
}
return %flattened;
}
1;

Auch abrufbar als: Unified diff