[MRG] preserve branch ordering when creating a buffer