ça sent le crash : désactive le parachute :
SDL_Init(SDL_INIT_VIDEO|SDL_INIT_NOPARACHUTE);
Ensuite, le programme devrait planter (donc te mettre un message d´erreur : au moins tu verras explicitement que ça a planté)
Vérifie que toutes tes fonctions qui renvoient un SDL_Surface* ne renvoient pas NULL 