Dont want to defend Microsoft. But just to light up why such things can happen.
I am a dev myself and in one project I added a somewhat complex feature. A coworker did a change in a similar area of the code. Both solutions worked on its own. But after both got merged, my changes stopped working. His changes broke my code. If he would have worked in it like a week later, mine would have gone through testing without problems and we may never noticed that bug.
My change was manipulating a list of entries based on some settings and do some calculations, while also allowing to change the items from outside the users doing. His part was saving the last item viewed by the user of that list. When my code removed an item but his had saved it, the program crashed.
The bigger the software, the more bugs you have