path: write buf_join() in terms of copy().