| Index: net/base/network_change_notifier_linux.h
|
| ===================================================================
|
| --- net/base/network_change_notifier_linux.h (revision 44286)
|
| +++ net/base/network_change_notifier_linux.h (working copy)
|
| @@ -13,7 +13,9 @@
|
| namespace net {
|
|
|
| class NetworkChangeNotifierLinux
|
| - : public NetworkChangeNotifier, public MessageLoopForIO::Watcher {
|
| + : public NetworkChangeNotifier,
|
| + public MessageLoopForIO::Watcher,
|
| + public MessageLoop::DestructionObserver {
|
| public:
|
| NetworkChangeNotifierLinux();
|
|
|
| @@ -32,6 +34,10 @@
|
| virtual void OnFileCanReadWithoutBlocking(int fd);
|
| virtual void OnFileCanWriteWithoutBlocking(int /* fd */);
|
|
|
| + // MessageLoop::DestructionObserver methods:
|
| +
|
| + virtual void WillDestroyCurrentMessageLoop();
|
| +
|
| private:
|
| virtual ~NetworkChangeNotifierLinux();
|
|
|
| @@ -44,10 +50,13 @@
|
| // recv() would block. Otherwise, it returns a net error code.
|
| int ReadNotificationMessage(char* buf, size_t len);
|
|
|
| + // Stops watching the netlink file descriptor.
|
| + void StopWatching();
|
| +
|
| ObserverList<Observer, true> observers_;
|
|
|
| int netlink_fd_; // This is the netlink socket descriptor.
|
| - MessageLoopForIO* const loop_;
|
| + MessageLoopForIO* loop_;
|
| MessageLoopForIO::FileDescriptorWatcher netlink_watcher_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(NetworkChangeNotifierLinux);
|
|
|