Bug 1274769 - handle the WebGLTimerQuery deletion status for GLContext cleanup. r=jgilbert

This commit is contained in:
JerryShih 2016-05-24 18:52:00 +02:00
Родитель 39105e76a9
Коммит 6002b9f436
3 изменённых файлов: 12 добавлений и 0 удалений

Просмотреть файл

@ -21,6 +21,8 @@ void
WebGLExtensionBase::MarkLost()
{
mIsLost = true;
OnMarkLost();
}
NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_0(WebGLExtensionBase)

Просмотреть файл

@ -249,6 +249,12 @@ WebGLExtensionDisjointTimerQuery::IsSupported(const WebGLContext* webgl)
// 'sync', we just piggy-back off of 'sync'.
}
void
WebGLExtensionDisjointTimerQuery::OnMarkLost()
{
mActiveQuery = nullptr;
}
IMPL_WEBGL_EXTENSION_GOOP(WebGLExtensionDisjointTimerQuery, EXT_disjoint_timer_query)
} // namespace mozilla

Просмотреть файл

@ -49,6 +49,8 @@ public:
protected:
virtual ~WebGLExtensionBase();
virtual void OnMarkLost() { }
bool mIsLost;
};
@ -387,6 +389,8 @@ public:
DECL_WEBGL_EXTENSION_GOOP
private:
virtual void OnMarkLost() override;
/**
* An active TIME_ELAPSED query participating in a begin/end block.
*/