BAN: Mark RefPtr and WeakPtr helper destructors virtual
Also fix a bug in WeakPtr::lock() which would assert false if the underlying weak link was not initialized
This commit is contained in:
		
							parent
							
								
									446220494e
								
							
						
					
					
						commit
						cfdce9be61
					
				|  | @ -36,7 +36,7 @@ namespace BAN | |||
| 
 | ||||
| 	protected: | ||||
| 		RefCounted() = default; | ||||
| 		~RefCounted() { ASSERT(m_ref_count == 0); } | ||||
| 		virtual ~RefCounted() { ASSERT(m_ref_count == 0); } | ||||
| 
 | ||||
| 	private: | ||||
| 		mutable uint32_t m_ref_count = 1; | ||||
|  |  | |||
|  | @ -34,7 +34,7 @@ namespace BAN | |||
| 	class Weakable | ||||
| 	{ | ||||
| 	public: | ||||
| 		~Weakable() | ||||
| 		virtual ~Weakable() | ||||
| 		{ | ||||
| 			if (m_link) | ||||
| 				m_link->invalidate(); | ||||
|  | @ -82,7 +82,7 @@ namespace BAN | |||
| 
 | ||||
| 		RefPtr<T> lock() | ||||
| 		{ | ||||
| 			if (m_link->valid()) | ||||
| 			if (valid()) | ||||
| 				return m_link->lock(); | ||||
| 			return nullptr; | ||||
| 		} | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue