From cc28aeadd8d81365480e924a5bb520e0ea6e982c Mon Sep 17 00:00:00 2001 From: olly Date: Fri, 12 Aug 2016 03:07:49 -0700 Subject: [PATCH] Automated rollback *** Reason for rollback *** Referential equality was probably the right thing to do, since using .equals breaks track selection in the case that a source exposes two or more tracks whose formats are equal. We should fix the way overrides work instead. *** Original change description *** Fix multi-period transitions with track selection overrides An override applies across periods provided they expose the same track groups according to .equals, but the formats in the override are then compared against the period's formats according to ==. Use .equals consistently to fix. *** ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=130083840 --- .../java/com/google/android/exoplayer2/source/TrackGroup.java | 2 +- .../com/google/android/exoplayer2/source/TrackGroupArray.java | 2 +- .../android/exoplayer2/trackselection/BaseTrackSelection.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/library/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java b/library/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java index 5001b7e5ca..29051e55cc 100644 --- a/library/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java +++ b/library/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java @@ -67,7 +67,7 @@ public final class TrackGroup { */ public int indexOf(Format format) { for (int i = 0; i < formats.length; i++) { - if (formats[i].equals(format)) { + if (format == formats[i]) { return i; } } diff --git a/library/src/main/java/com/google/android/exoplayer2/source/TrackGroupArray.java b/library/src/main/java/com/google/android/exoplayer2/source/TrackGroupArray.java index 20de9512f2..be7a53507f 100644 --- a/library/src/main/java/com/google/android/exoplayer2/source/TrackGroupArray.java +++ b/library/src/main/java/com/google/android/exoplayer2/source/TrackGroupArray.java @@ -58,7 +58,7 @@ public final class TrackGroupArray { */ public int indexOf(TrackGroup group) { for (int i = 0; i < length; i++) { - if (trackGroups[i].equals(group)) { + if (trackGroups[i] == group) { return i; } } diff --git a/library/src/main/java/com/google/android/exoplayer2/trackselection/BaseTrackSelection.java b/library/src/main/java/com/google/android/exoplayer2/trackselection/BaseTrackSelection.java index 5cc978f3b9..60ddb983d9 100644 --- a/library/src/main/java/com/google/android/exoplayer2/trackselection/BaseTrackSelection.java +++ b/library/src/main/java/com/google/android/exoplayer2/trackselection/BaseTrackSelection.java @@ -100,7 +100,7 @@ public abstract class BaseTrackSelection implements TrackSelection { @Override public final int indexOf(Format format) { for (int i = 0; i < length; i++) { - if (formats[i].equals(format)) { + if (formats[i] == format) { return i; } }