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
|
uses: actions/github-script@v6
|
||||||
if: always()
|
if: always()
|
||||||
with:
|
with:
|
||||||
github-token: ${{ secrets.WORKFLOW_TOKEN }}
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
script: |
|
script: |
|
||||||
const caches = await github.rest.actions.getActionsCacheList({
|
const caches = await github.rest.actions.getActionsCacheList({
|
||||||
owner: context.repo.owner,
|
owner: context.repo.owner,
|
||||||
|
@ -37,33 +37,6 @@
|
|||||||
|
|
||||||
namespace VeraCrypt
|
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
|
#ifdef TC_MACOSX
|
||||||
int GraphicUserInterface::g_customIdCmdV = 0;
|
int GraphicUserInterface::g_customIdCmdV = 0;
|
||||||
int GraphicUserInterface::g_customIdCmdA = 0;
|
int GraphicUserInterface::g_customIdCmdA = 0;
|
||||||
@ -479,6 +452,32 @@ namespace VeraCrypt
|
|||||||
|
|
||||||
shared_ptr <GetStringFunctor> GraphicUserInterface::GetAdminPasswordRequestHandler ()
|
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);
|
return shared_ptr <GetStringFunctor> (new AdminPasswordRequestHandler);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user