Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1564)

Unified Diff: pkg/analysis_server/lib/src/services/correction/sort_members.dart

Issue 620573002: Make fields sorting stable. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analysis_server/lib/src/services/correction/sort_members.dart
diff --git a/pkg/analysis_server/lib/src/services/correction/sort_members.dart b/pkg/analysis_server/lib/src/services/correction/sort_members.dart
index 5d01265e1557672872ff4b3f71a5973c328b8917..b22e69e3db1c6ae22b77c48f9d354026910effe3 100644
--- a/pkg/analysis_server/lib/src/services/correction/sort_members.dart
+++ b/pkg/analysis_server/lib/src/services/correction/sort_members.dart
@@ -78,9 +78,11 @@ class MemberSorter {
for (int i = 0; i < size; i++) {
_MemberInfo newInfo = membersSorted[size - 1 - i];
_MemberInfo oldInfo = members[size - 1 - i];
- String beforeCode = code.substring(0, oldInfo.offset);
- String afterCode = code.substring(oldInfo.end);
- code = beforeCode + newInfo.text + afterCode;
+ if (newInfo != oldInfo) {
+ String beforeCode = code.substring(0, oldInfo.offset);
+ String afterCode = code.substring(oldInfo.end);
+ code = beforeCode + newInfo.text + afterCode;
+ }
}
}
@@ -297,7 +299,7 @@ class MemberSorter {
if (priority1 == priority2) {
// don't reorder class fields
if (o1.item.kind == _MemberKind.CLASS_FIELD) {
- return 0;
+ return o1.offset - o2.offset;
}
// sort all other members by name
return o1.name.compareTo(o2.name);
@@ -412,4 +414,7 @@ class _PriorityItem {
other.isPrivate == isPrivate &&
other.isStatic == isStatic;
}
+
+ @override
+ String toString() => kind.toString();
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698