Mercurial > jhg
comparison test/org/tmatesoft/hg/tools/ChangelogEntryBuilder.java @ 386:73e875154afb
Do not fail with empty extras string in changeset
| author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
|---|---|
| date | Mon, 13 Feb 2012 14:52:21 +0100 |
| parents | 4b97847d0b2d |
| children |
comparison
equal
deleted
inserted
replaced
| 385:6150555eb41d | 386:73e875154afb |
|---|---|
| 65 modifiedFiles.addAll(files); | 65 modifiedFiles.addAll(files); |
| 66 return this; | 66 return this; |
| 67 } | 67 } |
| 68 | 68 |
| 69 public ChangelogEntryBuilder branch(String branchName) { | 69 public ChangelogEntryBuilder branch(String branchName) { |
| 70 if (branchName == null) { | 70 if (branchName == null || "default".equals(branchName)) { |
| 71 extrasMap.remove("branch"); | 71 extrasMap.remove("branch"); |
| 72 } else { | 72 } else { |
| 73 extrasMap.put("branch", branchName); | 73 extrasMap.put("branch", branchName); |
| 74 } | 74 } |
| 75 return this; | 75 return this; |
| 112 if (it.hasNext()) { | 112 if (it.hasNext()) { |
| 113 extras.append('\00'); | 113 extras.append('\00'); |
| 114 } | 114 } |
| 115 } | 115 } |
| 116 StringBuilder files = new StringBuilder(); | 116 StringBuilder files = new StringBuilder(); |
| 117 for (Iterator<String> it = modifiedFiles.iterator(); it.hasNext(); ) { | 117 if (modifiedFiles != null) { |
| 118 files.append(it.next()); | 118 for (Iterator<String> it = modifiedFiles.iterator(); it.hasNext(); ) { |
| 119 if (it.hasNext()) { | 119 files.append(it.next()); |
| 120 files.append('\n'); | 120 if (it.hasNext()) { |
| 121 files.append('\n'); | |
| 122 } | |
| 121 } | 123 } |
| 122 } | 124 } |
| 123 final long date = csetTime(); | 125 final long date = csetTime(); |
| 124 final int tz = csetTimezone(date); | 126 final int tz = csetTimezone(date); |
| 125 return String.format(f, manifestRevision.toString(), user, date, tz, extras, files, comment).getBytes(); | 127 return String.format(f, manifestRevision.toString(), user(), date, tz, extras, files, comment).getBytes(); |
| 126 } | 128 } |
| 127 | 129 |
| 128 private final static CharSequence encodeExtrasPair(String s) { | 130 private final static CharSequence encodeExtrasPair(String s) { |
| 129 if (s != null) { | 131 if (s != null) { |
| 130 return s.replace("\\", "\\\\").replace("\n", "\\n").replace("\r", "\\r").replace("\00", "\\0"); | 132 return s.replace("\\", "\\\\").replace("\n", "\\n").replace("\r", "\\r").replace("\00", "\\0"); |
