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 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 (*callOnMainThreadFunction)(function, context); | 59 (*callOnMainThreadFunction)(function, context); |
60 } | 60 } |
61 | 61 |
62 static void callFunctionObject(void* context) | 62 static void callFunctionObject(void* context) |
63 { | 63 { |
64 Function<void()>* function = static_cast<Function<void()>*>(context); | 64 Function<void()>* function = static_cast<Function<void()>*>(context); |
65 (*function)(); | 65 (*function)(); |
66 delete function; | 66 delete function; |
67 } | 67 } |
68 | 68 |
69 void callOnMainThread(const Function<void()>& function) | 69 void callOnMainThread(PassOwnPtr<Function<void()>> function) |
70 { | 70 { |
71 callOnMainThread(callFunctionObject, new Function<void()>(function)); | 71 callOnMainThread(callFunctionObject, function.leakPtr()); |
72 } | 72 } |
73 | 73 |
74 bool isMainThread() | 74 bool isMainThread() |
75 { | 75 { |
76 return currentThread() == mainThreadIdentifier; | 76 return currentThread() == mainThreadIdentifier; |
77 } | 77 } |
78 | 78 |
79 } // namespace WTF | 79 } // namespace WTF |
80 | 80 |
OLD | NEW |