Bonjour je fais face à un problème très bizarre depuis hier matin: déjà voici le code en question:
Dans ce code si je commente Load_All_Glyphs "error" ne s'affiche pas et dans le cas contraire il s'affiche. J'ai réduit la fonction Load_All_Glyphs à deux ligne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 tmpRWops = SDL_RWFromMem(dataBuffer,dataSize); for(int i=0;i<fName.size();i++) { TTF_Font* font = TTF_OpenFontRW(tmpRWops, 0, fSize[i]); if(!font) std::cout << "error"<<std::endl; Load_All_Glyphs(renderer, fName[i], fSize[i], colors[i],font); TTF_CloseFont(font); }
Il y a deux tour de boucle(premier passe pas le second(font=0)) et j'ai un "error"+segfault si j'appelle Load_All_Glyphs() ce qui me semble être pas normal étant donné que je close pas la font dans cette fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 for(Uint16 ch=0; ch<64000; ch++) { if(TTF_GlyphIsProvided(font,ch)) { SDL_Surface* tmpGlyph=TTF_RenderGlyph_Blended(font,ch,colors[j]); } }
Si quelqu'un pouvait m'éclairer j'en serais reconnaissant, merci d'avance.
Partager