diff --git a/indra/newview/llcontrolavatar.cpp b/indra/newview/llcontrolavatar.cpp
index 51dc7d7de1a3fec40261c3391f47ea22da756b16..699c3ce1f91818234dd852f6d3d2f1dd2118a8bc 100644
--- a/indra/newview/llcontrolavatar.cpp
+++ b/indra/newview/llcontrolavatar.cpp
@@ -32,6 +32,7 @@
 #include "llanimationstates.h"
 #include "llviewercontrol.h"
 #include "llmeshrepository.h"
+#include "llviewerregion.h"
 
 LLControlAvatar::LLControlAvatar(const LLUUID& id, const LLPCode pcode, LLViewerRegion* regionp) :
     LLVOAvatar(id, pcode, regionp),
@@ -275,6 +276,19 @@ void LLControlAvatar::updateDebugText()
                               total_linkset_count, animated_volume_count, active_string.c_str()));
         addDebugText(llformat("types %s lods %s", type_string.c_str(), lod_string.c_str()));
         addDebugText(llformat("tris %d verts %d", total_tris, total_verts));
+        std::string region_name = "no region";
+        if (mRootVolp->getRegion())
+        {
+            region_name = mRootVolp->getRegion()->getName();
+        }
+        std::string skel_region_name = "skel no region";
+        if (getRegion())
+        {
+            skel_region_name = getRegion()->getName();
+        }
+        addDebugText(llformat("region %x %s skel %x %s",
+                              mRootVolp->getRegion(), region_name.c_str(),
+                              getRegion(), skel_region_name.c_str()));
         //addDebugText(llformat("anim time %.1f (step %f factor %f)", 
         //                      mMotionController.getAnimTime(),
         //                      mMotionController.getTimeStep(), 
diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp
index 42f6b081e506a488309c2a0ee558d45c924830ae..e49c37be5ef8769d3fdaf00ccfc59706cad554a1 100644
--- a/indra/newview/llviewerobject.cpp
+++ b/indra/newview/llviewerobject.cpp
@@ -6102,6 +6102,11 @@ void LLViewerObject::setRegion(LLViewerRegion *regionp)
 		child->setRegion(regionp);
 	}
 
+    if (mControlAvatar)
+    {
+        mControlAvatar->setRegion(regionp);
+    }
+
 	setChanged(MOVED | SILHOUETTE);
 	updateDrawable(FALSE);
 }