mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-02-13 21:21:24 -05:00
Add execute command from url field on AutoOpen, implementing feature #7424
This commit is contained in:
parent
cc0530ba46
commit
de1c90d244
@ -2290,16 +2290,14 @@ void DatabaseWidget::processAutoOpen()
|
|||||||
{
|
{
|
||||||
Q_ASSERT(m_db);
|
Q_ASSERT(m_db);
|
||||||
|
|
||||||
|
// check if AutoOpen group exists
|
||||||
auto* autoopenGroup = m_db->rootGroup()->findGroupByPath("/AutoOpen");
|
auto* autoopenGroup = m_db->rootGroup()->findGroupByPath("/AutoOpen");
|
||||||
if (!autoopenGroup) {
|
if (!autoopenGroup) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// iterate over each entry in AutoOpen group
|
||||||
for (const auto* entry : autoopenGroup->entries()) {
|
for (const auto* entry : autoopenGroup->entries()) {
|
||||||
if (entry->url().isEmpty() || (entry->password().isEmpty() && entry->username().isEmpty())) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Support ifDevice advanced entry, a comma separated list of computer names
|
// Support ifDevice advanced entry, a comma separated list of computer names
|
||||||
// that control whether to perform AutoOpen on this entry or not. Can be
|
// that control whether to perform AutoOpen on this entry or not. Can be
|
||||||
// negated using '!'
|
// negated using '!'
|
||||||
@ -2327,7 +2325,17 @@ void DatabaseWidget::processAutoOpen()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// if entry starts with 'cmd://' execute openUrlForEntry
|
||||||
|
// this will allow triggering any application/script on db open
|
||||||
|
if (entry->url().startsWith("cmd://")) {
|
||||||
|
auto current_entry = entry->clone();
|
||||||
|
openUrlForEntry(current_entry);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (entry->url().isEmpty() || (entry->password().isEmpty() && entry->username().isEmpty())) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
openDatabaseFromEntry(entry);
|
openDatabaseFromEntry(entry);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user