aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google
diff options
context:
space:
mode:
authorGravatar cparsons <cparsons@google.com>2018-02-08 09:23:47 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-02-08 09:25:56 -0800
commit0589fdfd42657e4b452538fa40d1a9e5d31a30fd (patch)
treed1c6a053e816f513d866905fee313fae50061357 /src/main/java/com/google
parentb46feb0c359bfca90738b4ac9af9b176d9b39156 (diff)
Avoid integer overflow breaking protobuf artifact ordering.
An integer overflow caused by taking the difference between two hashcodes would result in nondeterministically having sortedCopy fail. Integer.compare is safer. RELNOTES: None. PiperOrigin-RevId: 185005542
Diffstat (limited to 'src/main/java/com/google')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
index 1d046dfafb..1a7e1e28f6 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
@@ -382,7 +382,7 @@ final class ProtobufSupport {
return new Ordering<ImmutableSet<Artifact>>() {
@Override
public int compare(ImmutableSet<Artifact> o1, ImmutableSet<Artifact> o2) {
- return o1.hashCode() - o2.hashCode();
+ return Integer.compare(o1.hashCode(), o2.hashCode());
}
}.sortedCopy(inputsToOutputsMap.keySet());
}