fix: do not join over zero-length edges