| 711 | // BUFFER |
| 712 | |
| 713 | static int Buffer_gc(lua_State *L) |
| 714 | { |
| 715 | dmScript::LuaHBuffer* buffer = dmScript::CheckBufferNoError(L, 1); |
| 716 | |
| 717 | if( buffer ) |
| 718 | { |
| 719 | if (buffer->m_Owner == dmScript::OWNER_LUA) |
| 720 | { |
| 721 | dmBuffer::Destroy(buffer->m_Buffer); |
| 722 | } |
| 723 | else if (buffer->m_Owner == dmScript::OWNER_RES && buffer->m_BufferResVersion != dmResource::RESOURCE_VERSION_INVALID) |
| 724 | { |
| 725 | uint16_t res_version = dmResource::GetVersion(g_Factory, buffer->m_BufferRes); |
| 726 | dmhash_t res_path_hash = 0; |
| 727 | dmResource::GetPath(g_Factory, buffer->m_BufferRes, &res_path_hash); |
| 728 | |
| 729 | if (res_version == buffer->m_BufferResVersion && res_path_hash == buffer->m_BufferResPathHash) |
| 730 | { |
| 731 | dmResource::Release(g_Factory, buffer->m_BufferRes); |
| 732 | } |
| 733 | } |
| 734 | } |
| 735 | return 0; |
| 736 | } |
| 737 | |
| 738 | static int Buffer_tostring(lua_State *L) |
| 739 | { |
nothing calls this directly
no test coverage detected