示例#1
0
        // Token: 0x0600342B RID: 13355 RVA: 0x000C9CD0 File Offset: 0x000C7ED0
        public static void DisableFilter(ref ActivityFilter filterList, EventSource source)
        {
            if (filterList == null)
            {
                return;
            }
            ActivityFilter activityFilter = filterList;
            ActivityFilter next           = activityFilter.m_next;

            while (next != null)
            {
                if (next.m_providerGuid == source.Guid)
                {
                    if (next.m_eventId >= 0 && next.m_eventId < source.m_eventData.Length)
                    {
                        EventSource.EventMetadata[] eventData = source.m_eventData;
                        int eventId = next.m_eventId;
                        eventData[eventId].TriggersActivityTracking = eventData[eventId].TriggersActivityTracking - 1;
                    }
                    activityFilter.m_next = next.m_next;
                    next.Dispose();
                    next = activityFilter.m_next;
                }
                else
                {
                    activityFilter = next;
                    next           = activityFilter.m_next;
                }
            }
            if (filterList.m_providerGuid == source.Guid)
            {
                if (filterList.m_eventId >= 0 && filterList.m_eventId < source.m_eventData.Length)
                {
                    EventSource.EventMetadata[] eventData2 = source.m_eventData;
                    int eventId2 = filterList.m_eventId;
                    eventData2[eventId2].TriggersActivityTracking = eventData2[eventId2].TriggersActivityTracking - 1;
                }
                ActivityFilter activityFilter2 = filterList;
                filterList = activityFilter2.m_next;
                activityFilter2.Dispose();
            }
            if (filterList != null)
            {
                ActivityFilter.EnsureActivityCleanupDelegate(filterList);
            }
        }
示例#2
0
        public static void DisableFilter(ref ActivityFilter filterList, EventSource source)
        {
            if (filterList == null)
            {
                return;
            }
            ActivityFilter activityFilter1 = filterList;
            ActivityFilter activityFilter2 = activityFilter1.m_next;

            while (activityFilter2 != null)
            {
                if (activityFilter2.m_providerGuid == source.Guid)
                {
                    if (activityFilter2.m_eventId >= 0 && activityFilter2.m_eventId < source.m_eventData.Length)
                    {
                        --source.m_eventData[activityFilter2.m_eventId].TriggersActivityTracking;
                    }
                    activityFilter1.m_next = activityFilter2.m_next;
                    activityFilter2.Dispose();
                    activityFilter2 = activityFilter1.m_next;
                }
                else
                {
                    activityFilter1 = activityFilter2;
                    activityFilter2 = activityFilter1.m_next;
                }
            }
            if (filterList.m_providerGuid == source.Guid)
            {
                if (filterList.m_eventId >= 0 && filterList.m_eventId < source.m_eventData.Length)
                {
                    --source.m_eventData[filterList.m_eventId].TriggersActivityTracking;
                }
                ActivityFilter activityFilter3 = filterList;
                filterList = activityFilter3.m_next;
                activityFilter3.Dispose();
            }
            if (filterList == null)
            {
                return;
            }
            ActivityFilter.EnsureActivityCleanupDelegate(filterList);
        }