FastLED 3.10.8
Loading...
Searching...
No Matches

◆ reset() [1/2]

template<typename T>
void fl::shared_ptr< T >::reset ( )
inline

Definition at line 294 of file shared_ptr.h.

294 {
295 //FL_WARN("shared_ptr::reset() called: mPtr=" << mPtr
296 // << ", mControlBlock=" << mControlBlock);
297 if (mControlBlock) {
298 //FL_WARN("control_block exists, calling remove_shared_ref()");
299 if (mControlBlock->remove_shared_ref()) {
300 //FL_WARN("mControlBlock->remove_shared_ref() returned true, destroying object");
301 mControlBlock->destroy_object();
302 if (--mControlBlock->weak_count == 0) {
303 //FL_WARN("weak_count reached 0, destroying control block");
304 mControlBlock->destroy_control_block();
305 }
306 }
307 }
308 mPtr = nullptr;
309 mControlBlock = nullptr;
310 }
detail::ControlBlockBase * mControlBlock
Definition shared_ptr.h:166