projects
/
platform
/
upstream
/
flatbuffers.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
42b48bd
)
Performance tweak to FlatBufferBuilder.CreateString method to remove the unnecessary...
author
Oli Wilkinson
<oli@evolutional.co.uk>
Fri, 11 Dec 2015 19:57:59 +0000
(14:57 -0500)
committer
Oli Wilkinson
<oli@evolutional.co.uk>
Fri, 11 Dec 2015 19:57:59 +0000
(14:57 -0500)
(See https://github.com/google/flatbuffers/issues/55#issuecomment-
164031718
for stats)
net/FlatBuffers/FlatBufferBuilder.cs
patch
|
blob
|
history
diff --git
a/net/FlatBuffers/FlatBufferBuilder.cs
b/net/FlatBuffers/FlatBufferBuilder.cs
index
3866d83
..
5230b32
100644
(file)
--- a/
net/FlatBuffers/FlatBufferBuilder.cs
+++ b/
net/FlatBuffers/FlatBufferBuilder.cs
@@
-276,12
+276,11
@@
namespace FlatBuffers
public StringOffset CreateString(string s)
{
- NotNested();
- byte[] utf8 = Encoding.UTF8.GetBytes(s);
- AddByte((byte)0);
- StartVector(1, utf8.Length, 1);
- Buffer.BlockCopy(utf8, 0, _bb.Data, _space -= utf8.Length,
- utf8.Length);
+ NotNested();
+ AddByte(0);
+ var utf8StringLen = Encoding.UTF8.GetByteCount(s);
+ StartVector(1, utf8StringLen, 1);
+ Encoding.UTF8.GetBytes(s, 0, s.Length, _bb.Data, _space -= utf8StringLen);
return new StringOffset(EndVector().Value);
}