Skip to content
This repository was archived by the owner on Sep 4, 2024. It is now read-only.

Commit cd46027

Browse files
committed
[Misc] Remove some extra string allocations.
1 parent 4247708 commit cd46027

File tree

5 files changed

+7
-6
lines changed

5 files changed

+7
-6
lines changed

Mono.Addins.Gui/Mono.Addins.Gui/AddinTreeWidget.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,7 @@ string EscapeWithFilterMarker (string txt)
352352
int i = txt.IndexOf (filter, StringComparison.CurrentCultureIgnoreCase);
353353
while (i != -1) {
354354
sb.Append (GLib.Markup.EscapeText (txt.Substring (last, i - last)));
355-
sb.Append ("<span color='blue'>").Append (txt.Substring (i, filter.Length)).Append ("</span>");
355+
sb.Append ("<span color='blue'>").Append (txt, i, filter.Length).Append ("</span>");
356356
last = i + filter.Length;
357357
i = txt.IndexOf (filter, last, StringComparison.CurrentCultureIgnoreCase);
358358
}

Mono.Addins.Setup/Mono.Addins.Setup.ProgressMonitoring/ProgressStatusMonitor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ void WriteLog (string text)
102102
pi = i + 1;
103103
i = text.IndexOf ('\n', pi);
104104
}
105-
logBuffer.Append (text.Substring (pi));
105+
logBuffer.Append (text, pi, text.Length - pi);
106106
}
107107

108108
public TextWriter Log {

Mono.Addins.Setup/Mono.Addins.Setup/PcFileCache.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,7 @@ string Evaluate (string value)
546546
StringBuilder sb = new StringBuilder ();
547547
int last = 0;
548548
while (i != -1 && i < value.Length) {
549-
sb.Append (value.Substring (last, i - last));
549+
sb.Append (value, last, i - last);
550550
if (i == 0 || value [i - 1] != '$') {
551551
// Evaluate if var is not escaped
552552
i += 2;
@@ -572,7 +572,7 @@ string Evaluate (string value)
572572
if (i < value.Length - 1)
573573
i = value.IndexOf ("${", i);
574574
}
575-
sb.Append (value.Substring (last, value.Length - last));
575+
sb.Append (value, last, value.Length - last);
576576
return sb.ToString ();
577577
}
578578
}

Mono.Addins.Setup/Mono.Addins.Setup/TextFormatter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ public void Append (string text)
201201
}
202202

203203
if (n != sn)
204-
currentWord.Append (text.Substring (sn, n - sn));
204+
currentWord.Append (text, sn, n - sn);
205205
if (foundSpace) {
206206
AppendCurrentWord (text[n]);
207207
n++;

Mono.Addins/Mono.Addins.Description/AddinDescription.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1009,7 +1009,8 @@ internal string ParseString (string input)
10091009
if (i == -1)
10101010
return input;
10111011

1012-
StringBuilder result = new StringBuilder (input.Substring (0, i), input.Length);
1012+
StringBuilder result = new StringBuilder (input.Length);
1013+
result.Append (input, 0, i);
10131014

10141015
while (i < input.Length) {
10151016
if (input [i] == '$') {

0 commit comments

Comments
 (0)