Add scoped autoreleasepool to tests and examples

This ensures ObjC objects do not leak. On non-Apple
platforms, the scope does nothing.

Fixed: dawn:546
Change-Id: Id43702e6536bf9cb37825a5449511e10cf0734f5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55841
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
This commit is contained in:
Austin Eng
2021-06-24 19:21:31 +00:00
committed by Dawn LUCI CQ
parent b911a96fcd
commit 700a5fb869
13 changed files with 169 additions and 8 deletions

View File

@@ -15,6 +15,7 @@
#include "SampleUtils.h"
#include "utils/ComboRenderPipelineDescriptor.h"
#include "utils/ScopedAutoreleasePool.h"
#include "utils/SystemUtils.h"
#include "utils/WGPUHelpers.h"
@@ -184,6 +185,7 @@ int main(int argc, const char* argv[]) {
init();
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
frame();
utils::USleep(16000);
}

View File

@@ -14,6 +14,7 @@
#include "SampleUtils.h"
#include "utils/ScopedAutoreleasePool.h"
#include "utils/SystemUtils.h"
#include "utils/WGPUHelpers.h"
@@ -147,6 +148,7 @@ int main(int argc, const char* argv[]) {
init();
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
frame();
utils::USleep(16000);
}

View File

@@ -15,6 +15,7 @@
#include "SampleUtils.h"
#include "utils/ComboRenderPipelineDescriptor.h"
#include "utils/ScopedAutoreleasePool.h"
#include "utils/SystemUtils.h"
#include "utils/WGPUHelpers.h"
@@ -324,6 +325,7 @@ int main(int argc, const char* argv[]) {
init();
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
frame();
utils::USleep(16000);
}

View File

@@ -15,6 +15,7 @@
#include "SampleUtils.h"
#include "utils/ComboRenderPipelineDescriptor.h"
#include "utils/ScopedAutoreleasePool.h"
#include "utils/SystemUtils.h"
#include "utils/WGPUHelpers.h"
@@ -176,6 +177,7 @@ int main(int argc, const char* argv[]) {
init();
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
frame();
utils::USleep(16000);
}

View File

@@ -15,6 +15,7 @@
#include "SampleUtils.h"
#include "utils/ComboRenderPipelineDescriptor.h"
#include "utils/ScopedAutoreleasePool.h"
#include "utils/SystemUtils.h"
#include "utils/WGPUHelpers.h"
@@ -301,6 +302,7 @@ int main(int argc, const char* argv[]) {
init();
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
frame();
utils::USleep(16000);
}

View File

@@ -55,6 +55,7 @@
#include "common/Log.h"
#include "utils/ComboRenderPipelineDescriptor.h"
#include "utils/GLFWUtils.h"
#include "utils/ScopedAutoreleasePool.h"
#include "utils/WGPUHelpers.h"
#include <dawn/dawn_proc.h>
@@ -334,6 +335,7 @@ int main(int argc, const char* argv[]) {
AddWindow();
while (windows.size() != 0) {
utils::ScopedAutoreleasePool pool;
glfwPollEvents();
for (auto it = windows.begin(); it != windows.end();) {