fix: remove potential memory leak from OaMetricSourceImp class

Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
Mateusz Jablonski
2023-10-11 14:41:22 +00:00
committed by Compute-Runtime-Automation
parent ae8494d379
commit 19aba581d4
4 changed files with 19 additions and 21 deletions

View File

@@ -361,7 +361,9 @@ void Mock<MetricsLibrary>::setMockedApi(MockMetricsLibraryApi *mockedApi) {
// Mock class used to communicate with metrics library.
metricsLibrary = &metricSource.getMetricsLibrary();
metricSource.setMetricsLibrary(*this);
auto &actualMetricsLibrary = metricSource.getMetricsLibraryObject();
actualMetricsLibrary.release();
actualMetricsLibrary.reset(this);
// Mock metrics library api functions.
contextCreateFunction = mockedApi->contextCreate;
@@ -394,7 +396,9 @@ void Mock<MetricsLibrary>::setMockedApi(MockMetricsLibraryApi *mockedApi) {
} else {
// Restore an original class used to communicate with metrics library.
metricSource.setMetricsLibrary(*metricsLibrary);
auto &actualMetricsLibrary = metricSource.getMetricsLibraryObject();
actualMetricsLibrary.release();
actualMetricsLibrary.reset(metricsLibrary);
}
}

View File

@@ -42,7 +42,9 @@ void Mock<MetricEnumeration>::setMockedApi(MockMetricsDiscoveryApi *mockedApi) {
// Mock class used to communicate with metrics library.
metricEnumeration = &metricSource.getMetricEnumeration();
metricSource.setMetricEnumeration(*this);
auto &actualMetricEnumeration = metricSource.getMetricEnumerationObject();
actualMetricEnumeration.release();
actualMetricEnumeration.reset(this);
// Mock metrics library api functions.
openAdapterGroup = mockedApi->OpenAdapterGroup;
@@ -53,7 +55,9 @@ void Mock<MetricEnumeration>::setMockedApi(MockMetricsDiscoveryApi *mockedApi) {
} else {
// Restore an original class used to communicate with metrics library.
metricSource.setMetricEnumeration(*metricEnumeration);
auto &actualMetricEnumeration = metricSource.getMetricEnumerationObject();
actualMetricEnumeration.release();
actualMetricEnumeration.reset(metricEnumeration);
}
}