Bug Description:
Two different bugs in join. One causes a segmentation fault if
increasing the space by 100 is not enough. The other gives the
wrong results because the program saves a pointer to the original
buffer rather than to the area where the lines have been copied.