That's more of a walk-around than a fix. As even if you do that it will still get corrupted again a little while later. As I have had to do that many times. I wish Mojang would read this and fix the problem for good.
Yes, I get this bug as well, when playing the game and I exit out of it. It will sometimes lose the server list, due to the reasoning that minecraft launcher doesn't rename it back from server.dat_tmp to server.dat. So you have to rename it back to server.dat manually.
It may erase the servers but going into the %appdata% and finding servers.dat_temp then remove the _temp in the extension will restore the list.