OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 static const char setTimeoutName[] = "setTimeout"; | 46 static const char setTimeoutName[] = "setTimeout"; |
47 static const char setIntervalName[] = "setInterval"; | 47 static const char setIntervalName[] = "setInterval"; |
48 static const char requestAnimationFrameName[] = "requestAnimationFrame"; | 48 static const char requestAnimationFrameName[] = "requestAnimationFrame"; |
49 static const char xhrSendName[] = "XMLHttpRequest.send"; | 49 static const char xhrSendName[] = "XMLHttpRequest.send"; |
50 static const char enqueueMutationRecordName[] = "Mutation"; | 50 static const char enqueueMutationRecordName[] = "Mutation"; |
51 | 51 |
52 } | 52 } |
53 | 53 |
54 namespace WebCore { | 54 namespace WebCore { |
55 | 55 |
56 class AsyncCallStackTracker::ExecutionContextData : public ContextLifecycleObser
ver { | 56 class AsyncCallStackTracker::ExecutionContextData FINAL : public ContextLifecycl
eObserver { |
57 WTF_MAKE_FAST_ALLOCATED; | 57 WTF_MAKE_FAST_ALLOCATED; |
58 public: | 58 public: |
59 typedef std::pair<RegisteredEventListener, RefPtr<AsyncCallChain> > EventLis
tenerAsyncCallChain; | 59 typedef std::pair<RegisteredEventListener, RefPtr<AsyncCallChain> > EventLis
tenerAsyncCallChain; |
60 typedef Vector<EventListenerAsyncCallChain, 1> EventListenerAsyncCallChainVe
ctor; | 60 typedef Vector<EventListenerAsyncCallChain, 1> EventListenerAsyncCallChainVe
ctor; |
61 typedef HashMap<AtomicString, EventListenerAsyncCallChainVector> EventListen
erAsyncCallChainVectorHashMap; | 61 typedef HashMap<AtomicString, EventListenerAsyncCallChainVector> EventListen
erAsyncCallChainVectorHashMap; |
62 | 62 |
63 ExecutionContextData(AsyncCallStackTracker* tracker, ExecutionContext* execu
tionContext) | 63 ExecutionContextData(AsyncCallStackTracker* tracker, ExecutionContext* execu
tionContext) |
64 : ContextLifecycleObserver(executionContext) | 64 : ContextLifecycleObserver(executionContext) |
65 , m_tracker(tracker) | 65 , m_tracker(tracker) |
66 { | 66 { |
(...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
421 { | 421 { |
422 m_currentAsyncCallChain.clear(); | 422 m_currentAsyncCallChain.clear(); |
423 m_nestedAsyncCallCount = 0; | 423 m_nestedAsyncCallCount = 0; |
424 ExecutionContextDataMap copy; | 424 ExecutionContextDataMap copy; |
425 m_executionContextDataMap.swap(copy); | 425 m_executionContextDataMap.swap(copy); |
426 for (ExecutionContextDataMap::const_iterator it = copy.begin(); it != copy.e
nd(); ++it) | 426 for (ExecutionContextDataMap::const_iterator it = copy.begin(); it != copy.e
nd(); ++it) |
427 delete it->value; | 427 delete it->value; |
428 } | 428 } |
429 | 429 |
430 } // namespace WebCore | 430 } // namespace WebCore |
OLD | NEW |