Git fork

notes: do not use strbuf_split*()

When reading copy instructions from the standard input, the program
reads a line, splits it into tokens at whitespace, and trims each of
the tokens before using. We no longer need to use strbuf just to be
able to trim, as string_list_split*() family now can trim while
splitting a string.

Retire the use of strbuf_split() from this code path.

Note that this loop is a bit sloppy in that it ensures at least
there are two tokens on each line, but ignores if there are extra
tokens on the line. Tightening it is outside the scope of this
series.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

+12 -11
+12 -11
builtin/notes.c
··· 375 376 while (strbuf_getline_lf(&buf, stdin) != EOF) { 377 struct object_id from_obj, to_obj; 378 - struct strbuf **split; 379 int err; 380 381 - split = strbuf_split(&buf, ' '); 382 - if (!split[0] || !split[1]) 383 die(_("malformed input line: '%s'."), buf.buf); 384 - strbuf_rtrim(split[0]); 385 - strbuf_rtrim(split[1]); 386 - if (repo_get_oid(the_repository, split[0]->buf, &from_obj)) 387 - die(_("failed to resolve '%s' as a valid ref."), split[0]->buf); 388 - if (repo_get_oid(the_repository, split[1]->buf, &to_obj)) 389 - die(_("failed to resolve '%s' as a valid ref."), split[1]->buf); 390 391 if (rewrite_cmd) 392 err = copy_note_for_rewrite(c, &from_obj, &to_obj); ··· 396 397 if (err) { 398 error(_("failed to copy notes from '%s' to '%s'"), 399 - split[0]->buf, split[1]->buf); 400 ret = 1; 401 } 402 403 - strbuf_list_free(split); 404 } 405 406 if (!rewrite_cmd) {
··· 375 376 while (strbuf_getline_lf(&buf, stdin) != EOF) { 377 struct object_id from_obj, to_obj; 378 + struct string_list split = STRING_LIST_INIT_NODUP; 379 int err; 380 381 + string_list_split_in_place_f(&split, buf.buf, " ", -1, 382 + STRING_LIST_SPLIT_TRIM); 383 + if (split.nr < 2) 384 die(_("malformed input line: '%s'."), buf.buf); 385 + if (repo_get_oid(the_repository, split.items[0].string, &from_obj)) 386 + die(_("failed to resolve '%s' as a valid ref."), 387 + split.items[0].string); 388 + if (repo_get_oid(the_repository, split.items[1].string, &to_obj)) 389 + die(_("failed to resolve '%s' as a valid ref."), 390 + split.items[1].string); 391 392 if (rewrite_cmd) 393 err = copy_note_for_rewrite(c, &from_obj, &to_obj); ··· 397 398 if (err) { 399 error(_("failed to copy notes from '%s' to '%s'"), 400 + split.items[0].string, split.items[1].string); 401 ret = 1; 402 } 403 404 + string_list_clear(&split, 0); 405 } 406 407 if (!rewrite_cmd) {