shared: SandboxedProcessor: Fix scope issue with readablePathLocation

The pointer becomes invalid as readablePathLocation falls out of scope,
and exile.h quits with an error.

This may indicate exile API sucks, so something to think about there.
This commit is contained in:
Albert S. 2022-05-31 11:23:21 +02:00
orang tua 5ed82a7dda
melakukan 15615776d3
1 mengubah file dengan 2 tambahan dan 1 penghapusan

Melihat File

@ -35,9 +35,10 @@ void SandboxedProcessor::enableSandbox(QString readablePath)
}
policy->namespace_options = EXILE_UNSHARE_NETWORK | EXILE_UNSHARE_USER;
std::string readablePathLocation;
if(!readablePath.isEmpty())
{
std::string readablePathLocation = readablePath.toStdString();
readablePathLocation = readablePath.toStdString();
if(exile_append_path_policies(policy, EXILE_FS_ALLOW_ALL_READ, readablePathLocation.c_str()) != 0)
{
qCritical() << "Failed to add path policies";