author | Zhiwei Gong <zhiwei.gong@amlogic.com> | 2015-02-03 04:17:31 (GMT) |
---|---|---|
committer | zhiwei.gong <zhiwei.gong@amlogic.com> | 2015-02-03 04:25:24 (GMT) |
commit | 2f88c6feaca3a2177dbfb9c19c046f6aaa816754 (patch) | |
tree | b26115b8135f952958d650fc0563b6fd9f508579 | |
parent | 7abd6089b536b9422e647fe9a13526de72497912 (diff) | |
download | pppoe-2f88c6feaca3a2177dbfb9c19c046f6aaa816754.zip pppoe-2f88c6feaca3a2177dbfb9c19c046f6aaa816754.tar.gz pppoe-2f88c6feaca3a2177dbfb9c19c046f6aaa816754.tar.bz2 |
PD102841 fix pppoe can not connect after disconnect it
Change-Id: Ib1e1626fdf2385effb8b0d6a5df6740e9992385b
-rw-r--r-- | java/src/com/droidlogic/pppoe/PppoeStateTracker.java | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/java/src/com/droidlogic/pppoe/PppoeStateTracker.java b/java/src/com/droidlogic/pppoe/PppoeStateTracker.java index e7b90b0..2ab283a 100644 --- a/java/src/com/droidlogic/pppoe/PppoeStateTracker.java +++ b/java/src/com/droidlogic/pppoe/PppoeStateTracker.java @@ -362,6 +362,7 @@ public class PppoeStateTracker implements NetworkStateTracker { boolean newNetworkstate = false; PppoeDevInfo info = new PppoeDevInfo(); + switch (msg.what) { case EVENT_DISCONNECTED: Slog.i(TAG, "[EVENT: PPP DOWN]"); @@ -395,6 +396,9 @@ public class PppoeStateTracker implements NetworkStateTracker { } else { setPppoeState(newNetworkstate, EVENT_CONNECT_FAILED, ppp_err); } + if (mNetworkAgent != null && mNetworkInfo.getState() == NetworkInfo.State.DISCONNECTED) { + mNetworkAgent.sendNetworkInfo(mNetworkInfo); + } break; case EVENT_CONNECTED: @@ -442,14 +446,15 @@ public class PppoeStateTracker implements NetworkStateTracker { mNetworkAgent = new NetworkAgent(mLooper, mContext, mNetworkName, mNetworkInfo, mNetworkCapabilities,mLinkProperties,60) { - @Override - public void unwanted() { + @Override + public void unwanted() { // We are user controlled, not driven by NetworkRequest. - } - }; - if (mNetworkAgent != null) { - mNetworkAgent.sendNetworkInfo(mNetworkInfo); - } + } + }; + + if (mNetworkAgent != null) { + mNetworkAgent.sendNetworkInfo(mNetworkInfo); + } // if (mNetworkAgent != null) mNetworkAgent.sendLinkProperties(mLinkProperties); break; } |