diff options
Diffstat (limited to 'dev/lib/memory/tracked_ptr.hpp')
| -rw-r--r-- | dev/lib/memory/tracked_ptr.hpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/dev/lib/memory/tracked_ptr.hpp b/dev/lib/memory/tracked_ptr.hpp index 61daada..bf557d8 100644 --- a/dev/lib/memory/tracked_ptr.hpp +++ b/dev/lib/memory/tracked_ptr.hpp @@ -140,7 +140,7 @@ namespace ocl::memory this->reset(); } - tracked_ptr(const tracked_ptr&) = delete; + tracked_ptr(const tracked_ptr&) = delete; tracked_ptr& operator=(const tracked_ptr&) = delete; public: @@ -224,12 +224,12 @@ namespace ocl::memory } /// @brief a Must Pass function is a standard way to verify a container' validity, inspired from NeKernel/VMKernel. - template <typename T> - inline void must_pass(tracked_ptr<T>& ptr) noexcept + template <typename T, typename error_handler> + inline void must_pass(tracked_ptr<T>& ptr, error_handler handler) { if (ptr.manager().allocator().allocated_count_ < ptr.manager().allocator().deallocated_count_) { - ::kill(::getpid(), SIGTRAP); + handler.template error<true>("Invalid TrackedPtr detected: Deallocated count exceeds allocated count."); } } } // namespace ocl::memory |
