aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/compiler/qv4ssa.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/compiler/qv4ssa.cpp')
-rw-r--r--src/qml/compiler/qv4ssa.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/qml/compiler/qv4ssa.cpp b/src/qml/compiler/qv4ssa.cpp
index 3ffaca5134..8f3e186cc7 100644
--- a/src/qml/compiler/qv4ssa.cpp
+++ b/src/qml/compiler/qv4ssa.cpp
@@ -3711,9 +3711,12 @@ void LifeTimeInterval::dump(QTextStream &out) const {
}
bool LifeTimeInterval::lessThan(const LifeTimeInterval &r1, const LifeTimeInterval &r2) {
- if (r1._ranges.first().start == r2._ranges.first().start)
- return r1._ranges.last().end < r2._ranges.last().end;
- else
+ if (r1._ranges.first().start == r2._ranges.first().start) {
+ if (r1.isSplitFromInterval() == r2.isSplitFromInterval())
+ return r1._ranges.last().end < r2._ranges.last().end;
+ else
+ return r1.isSplitFromInterval();
+ } else
return r1._ranges.first().start < r2._ranges.first().start;
}