commit | e3bba1c1e46d62505b228dc0924af7ddd0400060 | [log] [tgz] |
---|---|---|
author | Remi NGUYEN VAN <reminv@google.com> | Wed Mar 23 10:19:31 2022 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Wed Mar 23 10:19:31 2022 +0000 |
tree | 21baca18c728202bce297b6c4d96da9ff4011ed2 | |
parent | 352fb18d35f9619ddbe2f22cf2f7cd9d4cd88e09 [diff] | |
parent | 33703a7df1a8faf451062647c81389d85aa8b5c9 [diff] |
Merge "Use separate catch for getTcpKeepalivePacket" am: cc49988549 am: cf3568c82b am: 33703a7df1 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2036763 Change-Id: Idcbee0086c70b63a03386f2ce99ed7e6bb3d2f46
diff --git a/service/src/com/android/server/connectivity/TcpKeepaliveController.java b/service/src/com/android/server/connectivity/TcpKeepaliveController.java index acfbb3c..a9cb2fa 100644 --- a/service/src/com/android/server/connectivity/TcpKeepaliveController.java +++ b/service/src/com/android/server/connectivity/TcpKeepaliveController.java
@@ -124,7 +124,12 @@ final TcpKeepalivePacketDataParcelable tcpDetails = switchToRepairMode(fd); // TODO: consider building a TcpKeepalivePacketData directly from switchToRepairMode return fromStableParcelable(tcpDetails); - } catch (InvalidPacketException | InvalidSocketException e) { + // Use separate catch blocks: a combined catch would get wrongly optimized by R8 + // (b/226127213). + } catch (InvalidSocketException e) { + switchOutOfRepairMode(fd); + throw e; + } catch (InvalidPacketException e) { switchOutOfRepairMode(fd); throw e; }