tree-diff: reuse base str(buf) memory on sub-tree recursion