Bonjour,
J'utilise sdl2 et j'essaie d'afficher du texte avec SDL_ttf avec la fonction:

void text_draw(char *text, TTF_Font *f, Coord position, Color color, double scale) {
SDL_Surface *text_surface=NULL;
SDL_Texture *text_texture=NULL;
SDL_Color c;
SDL_Rect rect;
Coord text_rect;

if(strlen(text)>0 && scale>0 && f!=NULL && ptsize>0) {
c.a=color.a;
c.r=color.r;
c.g=color.g;
c.b=color.b;
text_surface=TTF_RenderText_Blended(f, text, c);
text_texture=SDL_CreateTextureFromSurface(current_window->rendering, text_surface);
SDL_FreeSurface(text_surface);
SDL_QueryTexture(text_texture, NULL, NULL, &text_rect.x, &text_rect.y);
rect.x=position.x;
rect.y=position.y;
rect.w=text_rect.x*scale;
rect.h=text_rect.y*scale;
SDL_RenderCopy(current_window->rendering, text_texture, NULL, &rect);
SDL_DestroyTexture(text_texture);
}
}

Le problème est que quand j'utilise cette fonction, l'utilisation de la ram du programme dans le gestionnaire des tâches ne cesse de monter, monter encore et encore. En essayant d'isoler le problème, quand je commente la partie SDL_CreateTextureFromSurface(...) l'utilisation de la mémoire est stable. Pourtant je libère bien la surface et la texture. Je voudrais savoir, si vous avez des fonctions pour afficher du texte, pouvez-vous tester et voir si vous aussi avez ce problème?