Chromium Code Reviews| Index: sdk/lib/developer/extension.dart |
| diff --git a/sdk/lib/developer/extension.dart b/sdk/lib/developer/extension.dart |
| index f23b5ad5630b266f35c0ef1576cedf6595374ff8..17877853a0d490de3144f93744f6cf16ded586ae 100644 |
| --- a/sdk/lib/developer/extension.dart |
| +++ b/sdk/lib/developer/extension.dart |
| @@ -102,17 +102,17 @@ void registerExtension(String method, ServiceExtensionHandler handler) { |
| _extensions[method] = handler; |
| } |
| -bool _scheduleExtension(String method, |
| - List<String> parameterKeys, |
| - List<String> parameterValues, |
| - SendPort replyPort, |
| - Object id) { |
| +Object _scheduleExtension(String method, |
|
turnidge
2015/08/20 17:34:39
Function?
Cutch
2015/08/20 18:09:37
Done.
|
| + List<String> parameterKeys, |
| + List<String> parameterValues, |
| + SendPort replyPort, |
| + Object id) { |
| ServiceExtensionHandler handler = _extensions[method]; |
| if (handler == null) { |
| - return false; |
| + return null; |
| } |
| - // Defer execution of handler until next event loop. |
| - Timer.run(() { |
| + // This closure will be executed at the next turn of the event loop. |
| + return () { |
| var parameters = {}; |
| for (var i = 0; i < parameterKeys.length; i++) { |
| parameters[parameterKeys[i]] = parameterValues[i]; |
| @@ -148,8 +148,7 @@ bool _scheduleExtension(String method, |
| } |
| _postResponse(replyPort, id, response); |
| }); |
| - }); |
| - return true; |
| + }; |
| } |
| _postResponse(SendPort replyPort, |