Bug 1454713. WebRenderUserData: Drop unnecessary T::Type() check. r=kats draft
authorJeff Muizelaar <jmuizelaar@mozilla.com>
Tue, 17 Apr 2018 13:52:45 -0400
changeset 783784 78fe2ca7d21eef3069acf96c5051b7e2dddebca7
parent 783247 1a6e27a09653b27d965e45bd2838e829a4564ebc
push id106778
push userbmo:jmuizelaar@mozilla.com
push dateTue, 17 Apr 2018 17:56:16 +0000
reviewerskats
bugs1454713
milestone61.0a1
Bug 1454713. WebRenderUserData: Drop unnecessary T::Type() check. r=kats Now that WebRenderUserData's a keyed on T::Type() we don't need to check it after doing the lookup.
gfx/layers/wr/WebRenderCommandBuilder.h
gfx/layers/wr/WebRenderUserData.h
--- a/gfx/layers/wr/WebRenderCommandBuilder.h
+++ b/gfx/layers/wr/WebRenderCommandBuilder.h
@@ -128,17 +128,17 @@ public:
       frame->GetProperty(WebRenderUserDataProperty::Key());
 
     if (!userDataTable) {
       userDataTable = new WebRenderUserDataTable();
       frame->AddProperty(WebRenderUserDataProperty::Key(), userDataTable);
     }
 
     RefPtr<WebRenderUserData>& data = userDataTable->GetOrInsert(WebRenderUserDataKey(aItem->GetPerFrameKey(), T::Type()));
-    if (!data || (data->GetType() != T::Type())) {
+    if (!data) {
       // To recreate a new user data, we should remove the data from the table first.
       if (data) {
         data->RemoveFromTable();
       }
       data = new T(mManager, aItem);
       mWebRenderUserDatas.PutEntry(data);
       if (aOutIsRecycled) {
         *aOutIsRecycled = false;
--- a/gfx/layers/wr/WebRenderUserData.h
+++ b/gfx/layers/wr/WebRenderUserData.h
@@ -219,17 +219,17 @@ GetWebRenderUserData(nsIFrame* aFrame, u
   MOZ_ASSERT(aFrame);
   WebRenderUserDataTable* userDataTable =
     aFrame->GetProperty(WebRenderUserDataProperty::Key());
   if (!userDataTable) {
     return nullptr;
   }
 
   WebRenderUserData* data = userDataTable->GetWeak(WebRenderUserDataKey(aPerFrameKey, T::Type()));
-  if (data && (data->GetType() == T::Type())) {
+  if (data) {
     RefPtr<T> result = static_cast<T*>(data);
     return result.forget();
   }
 
   return nullptr;
 }
 
 } // namespace layers