[EFL] NetworkStateNotifier::updateState() is called too often
authorch.dumez@sisa.samsung.com <ch.dumez@sisa.samsung.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 24 Mar 2013 14:43:34 +0000 (14:43 +0000)
committerch.dumez@sisa.samsung.com <ch.dumez@sisa.samsung.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 24 Mar 2013 14:43:34 +0000 (14:43 +0000)
commit775e71460baa0d61170930cfb742f6d28852c185
tree8a8659c7befa81090940cb8810b20e8d6ab4d152
parent3661126b3d56ba79c15293e4c323e31da99a2a36
[EFL] NetworkStateNotifier::updateState() is called too often
https://bugs.webkit.org/show_bug.cgi?id=113152

Reviewed by Kenneth Rohde Christiansen.

Wait until we have read all the data on the Netlink socket before
reporting a possible network interface change. This way, we make
sure we don't call NetworkStateNotifier::updateState() several
times in a row for no reason.

We also call NetworkStateNotifier::updateState() only if we get a
RTM_NEWADDR event and we are currently offline, or if we get a
RTM_DELADDR and we are currently online. This avoids calling
NetworkStateNotifier::updateState() uselessly as there is no way
the online state can change otherwise.

No new tests, no behavior change for layout tests.

* platform/network/efl/NetworkStateNotifierEfl.cpp:
(WebCore::NetworkStateNotifier::readSocketCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@146728 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/network/efl/NetworkStateNotifierEfl.cpp