Search code examples
directxdirectdraw

IDirectDrawSurface7::Blt - NULL pointer for source surface


Can lpDDSrcSurface be NULL while calling IDirectDrawSurface7::Blt?

dest_surf->Blt(&dest_rect, NULL, NULL, blt_flags, NULL);

Seems like the code above simply skips blitting but MSDN says nothing about it however.


Solution

  • From the syntax side, that's OK to pass NULL, but in practice, it does not make sense, if the source surface is NULL, where did you copy from?

    You can check the return value of Blt to see what happened if you pass NULL to source surface.