1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-15 10:07:39 -05:00

New marshalling function put_datapl().

Just like put_data(), but takes a ptrlen rather than separate ptr and
len arguments, so it saves a bit of repetition at call sites. I
probably should have written this ages ago, but better late than
never; I've also converted every call site I can find that needed it.
This commit is contained in:
Simon Tatham
2019-01-01 19:00:19 +00:00
parent 4397016a51
commit c02031ffd6
10 changed files with 24 additions and 17 deletions

View File

@ -1133,14 +1133,13 @@ static void scp_sink_coroutine(ScpSink *scp)
ptrlen leafname = make_ptrlen(
p, scp->command->len - (p - scp->command->s));
scp->filename_sb->len = 0;
put_data(scp->filename_sb, scp->head->destpath.ptr,
scp->head->destpath.len);
put_datapl(scp->filename_sb, scp->head->destpath);
if (scp->head->isdir) {
if (scp->filename_sb->len > 0 &&
scp->filename_sb->s[scp->filename_sb->len-1]
!= '/')
put_byte(scp->filename_sb, '/');
put_data(scp->filename_sb, leafname.ptr, leafname.len);
put_datapl(scp->filename_sb, leafname);
}
scp->filename = ptrlen_from_strbuf(scp->filename_sb);