public override int IsItemDirty(uint itemId, IntPtr punkDocData, out int pfDirty) { HierarchyNode hierNode = this.NodeFromItemId(itemId); Debug.Assert(hierNode != null, "Hierarchy node not found"); if(hierNode != this) { return ErrorHandler.ThrowOnFailure(hierNode.IsItemDirty(itemId, punkDocData, out pfDirty)); } else { return ErrorHandler.ThrowOnFailure(base.IsItemDirty(itemId, punkDocData, out pfDirty)); } }