mirror of
https://github.com/veracrypt/VeraCrypt
synced 2024-11-23 11:33:33 +01:00
Linux: fix crash when displaying Admin password dialog. Fix failure of Github action by using builtin GITHUB_TOKEN
This commit is contained in:
parent
82b9eef880
commit
1312c537f5
2
.github/workflows/build-linux.yml
vendored
2
.github/workflows/build-linux.yml
vendored
@ -190,7 +190,7 @@ jobs:
|
||||
uses: actions/github-script@v6
|
||||
if: always()
|
||||
with:
|
||||
github-token: ${{ secrets.WORKFLOW_TOKEN }}
|
||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
script: |
|
||||
const caches = await github.rest.actions.getActionsCacheList({
|
||||
owner: context.repo.owner,
|
||||
|
@ -37,33 +37,6 @@
|
||||
|
||||
namespace VeraCrypt
|
||||
{
|
||||
class AdminPasswordRequestHandler : public GetStringFunctor
|
||||
{
|
||||
public:
|
||||
virtual void operator() (string &passwordStr)
|
||||
{
|
||||
|
||||
wxString sValue;
|
||||
if (Gui->GetWaitDialog())
|
||||
{
|
||||
Gui->GetWaitDialog()->RequestAdminPassword(sValue);
|
||||
if (sValue.IsEmpty())
|
||||
throw UserAbort (SRC_POS);
|
||||
}
|
||||
else
|
||||
{
|
||||
wxPasswordEntryDialog dialog (Gui->GetActiveWindow(), LangString["LINUX_ADMIN_PW_QUERY"], LangString["LINUX_ADMIN_PW_QUERY_TITLE"]);
|
||||
if (dialog.ShowModal() != wxID_OK)
|
||||
throw UserAbort (SRC_POS);
|
||||
sValue = dialog.GetValue();
|
||||
}
|
||||
wstring wPassword (sValue); // A copy of the password is created here by wxWidgets, which cannot be erased
|
||||
finally_do_arg (wstring *, &wPassword, { StringConverter::Erase (*finally_arg); });
|
||||
|
||||
StringConverter::ToSingle (wPassword, passwordStr);
|
||||
}
|
||||
};
|
||||
|
||||
#ifdef TC_MACOSX
|
||||
int GraphicUserInterface::g_customIdCmdV = 0;
|
||||
int GraphicUserInterface::g_customIdCmdA = 0;
|
||||
@ -479,6 +452,32 @@ namespace VeraCrypt
|
||||
|
||||
shared_ptr <GetStringFunctor> GraphicUserInterface::GetAdminPasswordRequestHandler ()
|
||||
{
|
||||
class AdminPasswordRequestHandler : public GetStringFunctor
|
||||
{
|
||||
public;
|
||||
virtual void operator() (string &passwordStr)
|
||||
{
|
||||
|
||||
wxString sValue;
|
||||
if (Gui->GetWaitDialog())
|
||||
{
|
||||
Gui->GetWaitDialog()->RequestAdminPassword(sValue);
|
||||
if (sValue.IsEmpty())
|
||||
throw UserAbort (SRC_POS);
|
||||
}
|
||||
else
|
||||
{
|
||||
wxPasswordEntryDialog dialog (Gui->GetActiveWindow(), LangString["LINUX_ADMIN_PW_QUERY"], LangString["LINUX_ADMIN_PW_QUERY_TITLE"]);
|
||||
if (dialog.ShowModal() != wxID_OK)
|
||||
throw UserAbort (SRC_POS);
|
||||
sValue = dialog.GetValue();
|
||||
}
|
||||
wstring wPassword (sValue); // A copy of the password is created here by wxWidgets, which cannot be erased
|
||||
finally_do_arg (wstring *, &wPassword, { StringConverter::Erase (*finally_arg); });
|
||||
|
||||
StringConverter::ToSingle (wPassword, passwordStr);
|
||||
}
|
||||
};
|
||||
return shared_ptr <GetStringFunctor> (new AdminPasswordRequestHandler);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user