Skip to content

Commit

Permalink
Build 0.5.1
Browse files Browse the repository at this point in the history
  • Loading branch information
DavidXanatos committed Dec 12, 2020
1 parent 9c36a84 commit 76c31de
Show file tree
Hide file tree
Showing 17 changed files with 224 additions and 55 deletions.
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,23 @@ All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).


## [0.5.1 / 5.45.0] - 2020-12-12

### Added
- Added simple view mode

### Changed
- Updated SandMan UI to use Qt5.15.1

### Fixed
- fixed crash issue with progress dialog
- fixed progress dialog cancel button not wokong for update checker
- fixed issue around NtQueryDirectoryFile when deleting sandbox content
- fixed dark theme in the notification window
- fixed issue with disable force pograms tray menu



## [0.5.0 / 5.45.0] - 2020-12-06

### Added
Expand Down
9 changes: 8 additions & 1 deletion Sandboxie/common/win32_ntddk.h
Original file line number Diff line number Diff line change
Expand Up @@ -1895,7 +1895,8 @@ __declspec(dllimport) NTSTATUS RtlQueryRegistryValues(
//---------------------------------------------------------------------------

typedef void *PINITIAL_TEB;
typedef ULONG EVENT_TYPE;
//typedef ULONG EVENT_TYPE;
typedef enum _EVENT_TYPE { NotificationEvent, SynchronizationEvent } EVENT_TYPE;

//---------------------------------------------------------------------------

Expand Down Expand Up @@ -2032,6 +2033,12 @@ __declspec(dllimport) NTSTATUS __stdcall NtCreateEvent(
IN EVENT_TYPE EventType,
IN BOOLEAN InitialState);

__declspec(dllimport) NTSTATUS __stdcall NtWaitForSingleObject(
IN HANDLE Handle,
IN BOOLEAN Alertable,
IN PLARGE_INTEGER Timeout
);

__declspec(dllimport) NTSTATUS __stdcall NtOpenEvent(
OUT PHANDLE EventHandle,
IN ACCESS_MASK DesiredAccess,
Expand Down
4 changes: 4 additions & 0 deletions Sandboxie/core/drv/SboxDrv.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,15 @@
<PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
<TargetVersion>Windows7</TargetVersion>
<DriverType>WDM</DriverType>
<Driver_SpectreMitigation>false</Driver_SpectreMitigation>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='SbieDebug|x64'" Label="Configuration">
<ConfigurationType>Driver</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
<TargetVersion>Windows7</TargetVersion>
<DriverType>WDM</DriverType>
<Driver_SpectreMitigation>false</Driver_SpectreMitigation>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='SbieRelease|Win32'" Label="Configuration">
<ConfigurationType>Driver</ConfigurationType>
Expand All @@ -46,13 +48,15 @@
</DriverTargetPlatform>
<DriverType>WDM</DriverType>
<TargetVersion>Windows7</TargetVersion>
<Driver_SpectreMitigation>false</Driver_SpectreMitigation>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='SbieRelease|x64'" Label="Configuration">
<ConfigurationType>Driver</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
<TargetVersion>Windows7</TargetVersion>
<DriverType>WDM</DriverType>
<Driver_SpectreMitigation>false</Driver_SpectreMitigation>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
Expand Down
6 changes: 6 additions & 0 deletions SandboxiePlus/MiscHelpers/Common/NetworkAccessManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,12 @@ void CNetworkAccessManager::Abort(QNetworkReply *pReply)
pReply->deleteLater();
}

void CNetworkAccessManager::AbortAll()
{
foreach(QNetworkReply *pReply, m_Requests.keys())
Abort(pReply);
}

QNetworkReply* CNetworkAccessManager::createRequest ( Operation op, const QNetworkRequest & req, QIODevice * outgoingData )
{
QNetworkReply* pReply = QNetworkAccessManager::createRequest(op, req, outgoingData);
Expand Down
1 change: 1 addition & 0 deletions SandboxiePlus/MiscHelpers/Common/NetworkAccessManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ class MISCHELPERS_EXPORT CNetworkAccessManager : public QNetworkAccessManager
~CNetworkAccessManager();

void Abort(QNetworkReply* pReply);
void AbortAll();

private slots:
void finishedRequest(QNetworkReply *pReply);
Expand Down
1 change: 0 additions & 1 deletion SandboxiePlus/MiscHelpers/Common/ProgressDialog.h
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,6 @@ public slots:
void closeEvent(QCloseEvent *e)
{
emit Cancel();
this->deleteLater();
}

int m_TimerId;
Expand Down
8 changes: 4 additions & 4 deletions SandboxiePlus/MiscHelpers/MiscHelpers.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -72,19 +72,19 @@
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<QtInstall>msvc2015_64</QtInstall>
<QtInstall>msvc2019_64</QtInstall>
<QtModules>core;network;widgets;winextras</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="QtSettings">
<QtInstall>msvc2015_64</QtInstall>
<QtInstall>msvc2019</QtInstall>
<QtModules>core;network;widgets;winextras</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>msvc2017_64_dbg</QtInstall>
<QtInstall>msvc2019_64</QtInstall>
<QtModules>core;network;widgets;winextras</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="QtSettings">
<QtInstall>msvc2015</QtInstall>
<QtInstall>msvc2019</QtInstall>
<QtModules>core;network;widgets;winextras</QtModules>
</PropertyGroup>
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')">
Expand Down
20 changes: 18 additions & 2 deletions SandboxiePlus/QSbieAPI/Helpers/NtIO.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,15 @@ NTSTATUS NtIo_DeleteFolderRecursivelyImpl(POBJECT_ATTRIBUTES objattrs)

PFILE_BOTH_DIRECTORY_INFORMATION Info = (PFILE_BOTH_DIRECTORY_INFORMATION)malloc(PAGE_SIZE);

status = NtQueryDirectoryFile(Handle, 0, 0, 0, &Iosb, Info, PAGE_SIZE, FileBothDirectoryInformation, TRUE, NULL, FALSE);
HANDLE Event;
NtCreateEvent(&Event, GENERIC_ALL, 0, NotificationEvent, FALSE);
status = NtQueryDirectoryFile(Handle, Event, 0, 0, &Iosb, Info, PAGE_SIZE, FileBothDirectoryInformation, TRUE, NULL, FALSE);
if (status == STATUS_PENDING){
NtWaitForSingleObject(Event, TRUE, 0);
status = Iosb.Status;
}
NtClose(Event);

if (NT_SUCCESS(status))
{
FileName.assign(Info->FileName, Info->FileNameLength / sizeof(wchar_t));
Expand Down Expand Up @@ -274,7 +282,15 @@ NTSTATUS NtIo_MergeFolder(POBJECT_ATTRIBUTES src_objattrs, POBJECT_ATTRIBUTES de

PFILE_BOTH_DIRECTORY_INFORMATION Info = (PFILE_BOTH_DIRECTORY_INFORMATION)malloc(PAGE_SIZE);

status = NtQueryDirectoryFile(ScrHandle, 0, 0, 0, &Iosb, Info, PAGE_SIZE, FileBothDirectoryInformation, TRUE, NULL, FALSE);
HANDLE Event;
NtCreateEvent(&Event, GENERIC_ALL, 0, NotificationEvent, FALSE);
status = NtQueryDirectoryFile(ScrHandle, Event, 0, 0, &Iosb, Info, PAGE_SIZE, FileBothDirectoryInformation, TRUE, NULL, FALSE);
if (status == STATUS_PENDING){
NtWaitForSingleObject(Event, TRUE, 0);
status = Iosb.Status;
}
NtClose(Event);

if (NT_SUCCESS(status))
{
FileName.assign(Info->FileName, Info->FileNameLength / sizeof(wchar_t));
Expand Down
8 changes: 4 additions & 4 deletions SandboxiePlus/QSbieAPI/QSbieAPI.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -72,19 +72,19 @@
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<QtInstall>msvc2015_64</QtInstall>
<QtInstall>msvc2019_64</QtInstall>
<QtModules>concurrent;core</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="QtSettings">
<QtInstall>msvc2015_64</QtInstall>
<QtInstall>msvc2019</QtInstall>
<QtModules>concurrent;core</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>msvc2015_64</QtInstall>
<QtInstall>msvc2019_64</QtInstall>
<QtModules>concurrent;core</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="QtSettings">
<QtInstall>msvc2015</QtInstall>
<QtInstall>msvc2019</QtInstall>
<QtModules>concurrent;core</QtModules>
</PropertyGroup>
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')">
Expand Down
4 changes: 2 additions & 2 deletions SandboxiePlus/QSbieAPI/Sandboxie/SandBox.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ SB_STATUS CSandBox__DeleteFolder(const CSbieProgressPtr& pProgress, const QStrin

NtIo_WaitForFolder(&ntObject.attr);

if (pProgress->IsCancel())
if (pProgress->IsCanceled())
return STATUS_REQUEST_ABORTED; // or STATUS_TRANSACTION_ABORTED ?

pProgress->ShowMessage(CSandBox::tr("Deleting folder: %1").arg(Folder));
Expand Down Expand Up @@ -313,7 +313,7 @@ SB_STATUS CSandBox__MergeFolders(const CSbieProgressPtr& pProgress, const QStrin

NtIo_WaitForFolder(&ntTarget.attr);

if (pProgress->IsCancel())
if (pProgress->IsCanceled())
return STATUS_REQUEST_ABORTED; // or STATUS_TRANSACTION_ABORTED ?

pProgress->ShowMessage(CSandBox::tr("Merging folders: %1 >> %2").arg(SourceFolder).arg(TargetFolder));
Expand Down
10 changes: 4 additions & 6 deletions SandboxiePlus/QSbieAPI/SbieStatus.h
Original file line number Diff line number Diff line change
Expand Up @@ -125,13 +125,10 @@ class QSBIEAPI_EXPORT CSbieProgress : public QObject
CSbieProgress() : m_Status(OP_ASYNC), m_Canceled(false) {}

void Cancel() { m_Canceled = true; }
bool IsCancel() { return m_Canceled; }
bool IsCanceled() { return m_Canceled; }

void ShowMessage(const QString& text) { emit Message(text);
#ifdef _DEBUG
//QThread::msleep(500);
#endif
}
void ShowMessage(const QString& text) { emit Message(text);}
void SetProgress(int value) { emit Progress(value); }
void Finish(SB_STATUS status) { m_Status = m_Canceled ? SB_ERR(OP_CANCELED) : status; emit Finished(); }

SB_STATUS GetStatus() { return m_Status; }
Expand All @@ -140,6 +137,7 @@ class QSBIEAPI_EXPORT CSbieProgress : public QObject
signals:
//void Progress(int procent);
void Message(const QString& text);
void Progress(int value);
void Finished();

protected:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,19 +67,19 @@
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>msvc2015_64</QtInstall>
<QtInstall>msvc2019_64</QtInstall>
<QtModules>core;network;widgets</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<QtInstall>msvc2015</QtInstall>
<QtInstall>msvc2019</QtInstall>
<QtModules>core;network;widgets</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<QtInstall>msvc2015_64</QtInstall>
<QtInstall>msvc2019_64</QtInstall>
<QtModules>core;network;widgets</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<QtInstall>msvc2015</QtInstall>
<QtInstall>msvc2019</QtInstall>
<QtModules>core;network;widgets</QtModules>
</PropertyGroup>
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')">
Expand Down
Loading

0 comments on commit 76c31de

Please sign in to comment.