Cleanup after codec runner
Make sure both libva and magma cleanup functions are called before the
process exists.
Change-Id: I0b799ab2a0a628b988b920f327769318f3278894
Reviewed-on: https://fuchsia-review.googlesource.com/c/third_party/github.com/intel/media-driver/+/694816
Reviewed-by: John Bauman <jbauman@google.com>
diff --git a/fuchsia/main.cc b/fuchsia/main.cc
index e5ecd9a..d324398 100644
--- a/fuchsia/main.cc
+++ b/fuchsia/main.cc
@@ -17,10 +17,17 @@
return -1;
}
- CodecRunnerApp<CodecAdapterVaApiDecoder, CodecAdapterVaApiEncoder> codec_runner;
- codec_runner.Init();
- codec_runner.Serve();
- codec_runner.Run();
+ {
+ CodecRunnerApp<CodecAdapterVaApiDecoder, CodecAdapterVaApiEncoder> codec_runner;
+ codec_runner.Init();
+ codec_runner.Serve();
+ codec_runner.Run();
+ } // ~codec_runner
+
+ if (!VADisplayWrapper::DestroySingleton()) {
+ fprintf(stderr, "Failed to terminate VADisplay\n");
+ return -1;
+ }
return 0;
}