diff --git a/indra/newview/lldrawpool.cpp b/indra/newview/lldrawpool.cpp
index b3ba516a1c9f4fb574b0b52e7338653d0c54c0b4..721fa22e2f9cc44c61c9b1d60bc3bc910d4ed30d 100644
--- a/indra/newview/lldrawpool.cpp
+++ b/indra/newview/lldrawpool.cpp
@@ -468,7 +468,7 @@ void LLRenderPass::pushRiggedBatches(U32 type, bool texture, bool batch_textures
             LLDrawInfo* pparams = *i;
             LLCullResult::increment_iterator(i, end);
 
-            if (pparams->mAvatar.notNull() && (lastAvatar != pparams->mAvatar || lastMeshId != pparams->mSkinInfo->mHash))
+            if (pparams->mAvatar.notNull() && (lastAvatar != pparams->mAvatar.get() || lastMeshId != pparams->mSkinInfo->mHash))
             {
                 uploadMatrixPalette(*pparams);
                 lastAvatar = pparams->mAvatar;
@@ -820,7 +820,7 @@ void LLRenderPass::pushUntexturedRiggedGLTFBatches(U32 type)
 
 void LLRenderPass::pushRiggedGLTFBatch(LLDrawInfo& params, LLVOAvatar*& lastAvatar, U64& lastMeshId)
 {
-    if (params.mAvatar.notNull() && (lastAvatar != params.mAvatar || lastMeshId != params.mSkinInfo->mHash))
+    if (params.mAvatar.notNull() && (lastAvatar != params.mAvatar.get() || lastMeshId != params.mSkinInfo->mHash))
     {
         uploadMatrixPalette(params);
         lastAvatar = params.mAvatar;
@@ -832,7 +832,7 @@ void LLRenderPass::pushRiggedGLTFBatch(LLDrawInfo& params, LLVOAvatar*& lastAvat
 
 void LLRenderPass::pushUntexturedRiggedGLTFBatch(LLDrawInfo& params, LLVOAvatar*& lastAvatar, U64& lastMeshId)
 {
-    if (params.mAvatar.notNull() && (lastAvatar != params.mAvatar || lastMeshId != params.mSkinInfo->mHash))
+    if (params.mAvatar.notNull() && (lastAvatar != params.mAvatar.get() || lastMeshId != params.mSkinInfo->mHash))
     {
         uploadMatrixPalette(params);
         lastAvatar = params.mAvatar;
diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp
index 3cba1d77c060279db04657b17b1bfe360ffeabf1..6ee7c79e35a3fe1ab3bd51c311598de6c6348134 100644
--- a/indra/newview/lldrawpoolalpha.cpp
+++ b/indra/newview/lldrawpoolalpha.cpp
@@ -560,7 +560,7 @@ void LLDrawPoolAlpha::renderRiggedPbrEmissives(std::vector<LLDrawInfo*>& emissiv
 
     for (LLDrawInfo* draw : emissives)
     {
-        if (lastAvatar != draw->mAvatar || lastMeshId != draw->mSkinInfo->mHash)
+        if (lastAvatar != draw->mAvatar.get() || lastMeshId != draw->mSkinInfo->mHash)
         {
             if (!uploadMatrixPalette(*draw))
             { // failed to upload matrix palette, skip rendering
diff --git a/indra/newview/llreflectionmapmanager.cpp b/indra/newview/llreflectionmapmanager.cpp
index d4e1d22f35d722b3db3a253eaa322044b243f691..3510d09db8432a9ba2c6a44df4ababc0ea51c6d8 100644
--- a/indra/newview/llreflectionmapmanager.cpp
+++ b/indra/newview/llreflectionmapmanager.cpp
@@ -224,7 +224,7 @@ void LLReflectionMapManager::update()
             continue;
         }
         
-        if (probe != mDefaultProbe && 
+        if (probe != mDefaultProbe.get() && 
             (!probe->isRelevant() || mPaused))
         { // skip irrelevant probes (or all non-default probes if paused)
             continue;
@@ -234,7 +234,7 @@ void LLReflectionMapManager::update()
 
         LLVector4a d;
 
-        if (probe != mDefaultProbe)
+        if (probe != mDefaultProbe.get())
         {
             if (probe->mViewerObject) //make sure probes track the viewer objects they are attached to
             {
@@ -930,7 +930,7 @@ void LLReflectionMapManager::updateUniforms()
             break;
         }
 
-        if (refmap != mDefaultProbe)
+        if (refmap != mDefaultProbe.get())
         {
             // bucket search data
             // theory of operation: