diff options
author | Przemyslaw Szczepaniak <pszczepaniak@google.com> | 2018-04-20 14:22:10 +0100 |
---|---|---|
committer | Przemyslaw Szczepaniak <pszczepaniak@google.com> | 2018-04-20 14:30:29 +0100 |
commit | a144106df8f9b82251a5e584b1b083fb39d33b88 (patch) | |
tree | 8e3cb4caf458ef77667031d495635f784010a65a | |
parent | 61bd257e3f6740d41f219142987d6dc6444c0459 (diff) | |
download | ml-a144106df8f9b82251a5e584b1b083fb39d33b88.tar.gz |
Error code fix and added new (std::nothrow) where needed.
- 'new (std::nothrow)' was added for object allocations that
may cause OUT_OF_MEMORY error code.
- Changed Memory::create error code from OP_FAILED
to OUT_OF_MEMORY.
Bug: 77732225
Test: NeuralNetworkTests
Change-Id: I063ff281cf819d546c6db67fc6da338fc87c632e
-rw-r--r-- | nn/runtime/CompilationBuilder.cpp | 2 | ||||
-rw-r--r-- | nn/runtime/Memory.cpp | 2 | ||||
-rw-r--r-- | nn/runtime/ModelBuilder.cpp | 2 | ||||
-rw-r--r-- | nn/runtime/NeuralNetworks.cpp | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/nn/runtime/CompilationBuilder.cpp b/nn/runtime/CompilationBuilder.cpp index b9d125860..055b16c6f 100644 --- a/nn/runtime/CompilationBuilder.cpp +++ b/nn/runtime/CompilationBuilder.cpp @@ -103,7 +103,7 @@ int CompilationBuilder::createExecution(ExecutionBuilder **execution) { *execution = nullptr; return ANEURALNETWORKS_BAD_STATE; } - *execution = new ExecutionBuilder(this); + *execution = new (std::nothrow) ExecutionBuilder(this); return (*execution ? ANEURALNETWORKS_NO_ERROR : ANEURALNETWORKS_OUT_OF_MEMORY); } diff --git a/nn/runtime/Memory.cpp b/nn/runtime/Memory.cpp index 8f76b76d5..55dca75bb 100644 --- a/nn/runtime/Memory.cpp +++ b/nn/runtime/Memory.cpp @@ -29,7 +29,7 @@ int Memory::create(uint32_t size) { mMemory = mapMemory(mHidlMemory); if (mMemory == nullptr) { LOG(ERROR) << "Memory::create failed"; - return ANEURALNETWORKS_OP_FAILED; + return ANEURALNETWORKS_OUT_OF_MEMORY; } return ANEURALNETWORKS_NO_ERROR; } diff --git a/nn/runtime/ModelBuilder.cpp b/nn/runtime/ModelBuilder.cpp index d136f5b48..f8c318eca 100644 --- a/nn/runtime/ModelBuilder.cpp +++ b/nn/runtime/ModelBuilder.cpp @@ -301,7 +301,7 @@ int ModelBuilder::createCompilation(CompilationBuilder** compilation) { *compilation = nullptr; return ANEURALNETWORKS_BAD_STATE; } - *compilation = new CompilationBuilder(this); + *compilation = new (std::nothrow) CompilationBuilder(this); return (*compilation ? ANEURALNETWORKS_NO_ERROR : ANEURALNETWORKS_OUT_OF_MEMORY); } diff --git a/nn/runtime/NeuralNetworks.cpp b/nn/runtime/NeuralNetworks.cpp index 9a3c421f9..265f15432 100644 --- a/nn/runtime/NeuralNetworks.cpp +++ b/nn/runtime/NeuralNetworks.cpp @@ -276,7 +276,7 @@ int ANeuralNetworksModel_create(ANeuralNetworksModel** model) { LOG(ERROR) << "ANeuralNetworksModel_create passed a nullptr"; return ANEURALNETWORKS_UNEXPECTED_NULL; } - ModelBuilder* m = new ModelBuilder(); + ModelBuilder* m = new (std::nothrow) ModelBuilder(); if (m == nullptr) { *model = nullptr; return ANEURALNETWORKS_OUT_OF_MEMORY; |