OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 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 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
174 | 174 |
175 setIndexedDBClientCreateFunction(IndexedDBClientImpl::create); | 175 setIndexedDBClientCreateFunction(IndexedDBClientImpl::create); |
176 | 176 |
177 MediaPlayer::setMediaEngineCreateFunction(WebMediaPlayerClientImpl::create); | 177 MediaPlayer::setMediaEngineCreateFunction(WebMediaPlayerClientImpl::create); |
178 } | 178 } |
179 | 179 |
180 void shutdown() | 180 void shutdown() |
181 { | 181 { |
182 // currentThread will always be non-null in production, but can be null in C
hromium unit tests. | 182 // currentThread will always be non-null in production, but can be null in C
hromium unit tests. |
183 if (Platform::current()->currentThread()) { | 183 if (Platform::current()->currentThread()) { |
184 ASSERT(s_endOfTaskRunner); | 184 // We don't need to (cannot) remove s_endOfTaskRunner from the current |
185 Platform::current()->currentThread()->removeTaskObserver(s_endOfTaskRunn
er); | 185 // message loop, because the message loop is already destructed before |
| 186 // the shutdown() is called. |
186 delete s_endOfTaskRunner; | 187 delete s_endOfTaskRunner; |
187 s_endOfTaskRunner = 0; | 188 s_endOfTaskRunner = 0; |
188 } | 189 } |
189 | 190 |
190 ASSERT(s_isolateInterruptor); | 191 ASSERT(s_isolateInterruptor); |
191 ThreadState::current()->removeInterruptor(s_isolateInterruptor); | 192 ThreadState::current()->removeInterruptor(s_isolateInterruptor); |
192 | 193 |
193 // currentThread will always be non-null in production, but can be null in C
hromium unit tests. | 194 // currentThread will always be non-null in production, but can be null in C
hromium unit tests. |
194 if (Platform::current()->currentThread()) { | 195 if (Platform::current()->currentThread()) { |
195 ASSERT(s_pendingGCRunner); | 196 ASSERT(s_pendingGCRunner); |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
253 channel->state = WTFLogChannelOn; | 254 channel->state = WTFLogChannelOn; |
254 #endif // !LOG_DISABLED | 255 #endif // !LOG_DISABLED |
255 } | 256 } |
256 | 257 |
257 void resetPluginCache(bool reloadPages) | 258 void resetPluginCache(bool reloadPages) |
258 { | 259 { |
259 Page::refreshPlugins(reloadPages); | 260 Page::refreshPlugins(reloadPages); |
260 } | 261 } |
261 | 262 |
262 } // namespace blink | 263 } // namespace blink |
OLD | NEW |