Foros del Web » Programación para mayores de 30 ;) » C/C++ »

segmention fault con libreria sdl_TTF

Estas en el tema de segmention fault con libreria sdl_TTF en el foro de C/C++ en Foros del Web. hOLA BUENas! recientemente estoy iniciado dando los primeros pasos programando videojuegos en c++ con la liberia SDL. Creando la parte del contador del juego he ...
  #1 (permalink)  
Antiguo 12/04/2011, 14:55
vib
 
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
segmention fault con libreria sdl_TTF

hOLA BUENas!
recientemente estoy iniciado dando los primeros pasos programando videojuegos en c++ con la liberia SDL.
Creando la parte del contador del juego he notado que me da un problema a largo plazo...

no libero memoria.. y eso hace que el proceso cada vez vaya ocupando mas y mas memoria y asta que llega a decirme segmention fault...

como soluciono eso?

La cosa es hacer un contador... y que cada bucle ese contador canvie a +1.. por ejemplo

aqui os dejo el codigo de como lo tengo echo:
Cita:
/ Cargamos la fuente que vamos a utilizar de tamaño 40
TTF_Font *fuente;
fuente = TTF_OpenFont("ariblk.ttf", 30);//tamañao de la letra
//////////////////////////////////////////////////////////////////////////////////
/*prueba score*/
SDL_Surface *ttext;
SDL_Color bgcolor,fgcolor;//para los colores
// inicializa colores para el texto
fgcolor.r=200;
fgcolor.g=200;
fgcolor.b=10;

bgcolor.r=255;
bgcolor.g=0;
bgcolor.b=0;
int num=200;
char msg[30];
SDL_Rect rectangulo;

int done=0;
while(done==0){

SDL_FillRect(pantalla,&rectangulo,SDL_MapRGB(panta lla->format,0,0,0));
sprintf(msg,"%d",num);
ttext = TTF_RenderText_Shaded(fuente,msg,fgcolor,bgcolor);
num++;

SDL_BlitSurface(ttext,NULL,pantalla,&rectangulo);
SDL_Flip(pantalla);
SDL_FreeSurface(pantalla);

}
Alguna ayuda?:D
SDL_CLOSETTF al tener memoria activa no me deja cerrar la fuente.. nose he provado todo lo que se me ocurrio ;S

Etiquetas: fault, libreria
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:28.