Is this needed only for Windows? If so put behind ifdef.