Currently, the data in a strbuf is modified using add operations. To
set the buffer to some data a reset must be performed before an add.
strbuf_reset(buf);
strbuf_add(buf, cb.buf.buf, cb.buf.len);
And this is a common sequence of operations with 70 occurrences found in
the current source code. This includes all the different variations
(add, addf, addstr, addbuf, addch).
FILES=`find ./ -name '*.c'`
CNT=$(pcregrep -M "strbuf_reset.*\n.*strbuf_add" $FILES | wc -l)
CNT=$(echo "$CNT / 2" | bc)
echo $CNT
70
These patches add strbuf_set operations which allow this common sequence
to be performed in one line instead of two.
strbuf_set(buf, cb.buf.buf, cb.buf.len);
Only the first few files have been converted in this preliminary patch set.
Jeremiah Mahler (5):
add strbuf_set operations
add strbuf_set operations documentation
sha1_name.c: cleanup using strbuf_set operations
fast-import.c: cleanup using strbuf_set operations
builtin/remote.c: cleanup using strbuf_set operations
Documentation/technical/api-strbuf.txt | 18 ++++++++++++
builtin/remote.c | 51 ++++++++++++----------------------
fast-import.c | 19 ++++---------
sha1_name.c | 15 ++++------
strbuf.c | 21 ++++++++++++++
strbuf.h | 14 ++++++++++
6 files changed, 81 insertions(+), 57 deletions(-)
--
2.0.0.573.ged771ce.dirty
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html