obj_track: Eliminate warning for presentable image

Distinguish between freeObj calls that are being done for
layer internal reasons (i.e. tracking presentable_image objects)
and user actions to eliminate unnecessary warning from layer.
diff --git a/layers/object_track.h b/layers/object_track.h
index e9b3eb7..af6be9b 100644
--- a/layers/object_track.h
+++ b/layers/object_track.h
@@ -155,6 +155,8 @@
             return "QUERY_POOL";
         case XGL_OBJECT_TYPE_DESCRIPTOR_REGION:
             return "DESCRIPTOR_REGION";
+        case XGL_OBJECT_TYPE_PRESENTABLE_IMAGE_MEMORY:
+            return "PRESENTABLE_IMAGE_MEMORY";
         default:
             return "UNKNOWN";
     }
diff --git a/xgl-layer-generate.py b/xgl-layer-generate.py
index 33b1683..be3aa1b 100755
--- a/xgl-layer-generate.py
+++ b/xgl-layer-generate.py
@@ -1354,7 +1354,7 @@
         header_txt.append('            assert(numTotalObjs > 0);')
         header_txt.append('            numTotalObjs--;')
         header_txt.append('            char str[1024];')
-        header_txt.append('            sprintf(str, "OBJ_STAT Removed %s obj %p that was used %lu times (%lu total objs & %lu %s objs).", string_XGL_OBJECT_TYPE(pTrav->obj.objType), pTrav->obj.pObj, pTrav->obj.numUses, numTotalObjs, numObjs[pTrav->obj.objType], string_XGL_OBJECT_TYPE(pTrav->obj.objType));')
+        header_txt.append('            sprintf(str, "OBJ_STAT Removed %s obj %p that was used %lu times (%lu total objs remain & %lu %s objs).", string_XGL_OBJECT_TYPE(pTrav->obj.objType), pTrav->obj.pObj, pTrav->obj.numUses, numTotalObjs, numObjs[pTrav->obj.objType], string_XGL_OBJECT_TYPE(pTrav->obj.objType));')
         header_txt.append('            layerCbMsg(XGL_DBG_MSG_UNKNOWN, XGL_VALIDATION_LEVEL_0, pObj, 0, OBJTRACK_NONE, "OBJTRACK", str);')
         header_txt.append('            free(pTrav);')
         header_txt.append('            return;')