Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: Bug dans Texture::create()  (Lu 3264 fois)

0 Membres et 1 Invité sur ce sujet

iota

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Bug dans Texture::create()
« le: Avril 01, 2012, 01:50:24 am »
Bonsoir,

Le code suivant fonctionne avec le commit du 30 mars 2012, mais pas avec le commit suivant de la SFML.
Le chargement de la texture échoue et un message d'erreur indique que la taille est invalide(0x0).

#include <SFML/Graphics.hpp>
#include <iostream>

int main(int argc, char* argv[])
{
sf::Texture texture;
if( texture.loadFromFile("une_image.png") )
{
std::cout << "Texture chargee." << std::endl;
}
else
{
std::cout << "Impossible de charger la texture." << std::endl;
}
return 0;
}

J'ai été voir ce qui se passait dans le code de la SFML et j'ai trouvé une erreur dans la fonction Texture::create(unsigned int width, unsigned int height):
bool Texture::create(unsigned int width, unsigned int height)
{
    if ((m_size.x == 0) || (m_size.y == 0)) // Ici ça devrait être les paramêtres width et height qui devrait être vérifiés.
    {
        err() << "Failed to create texture, invalid size (" << m_size.x << "x" << m_size.y << ")" << std::endl;
        return false;
    }
    ...

J'ai tester de corrigé ça dans les sources, recompilé, et le problème semble effectivement réglé.


« Modifié: Avril 01, 2012, 01:56:10 am par iota »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re: Bug dans Texture::create()
« Réponse #1 le: Avril 01, 2012, 10:06:26 am »
Oui c'est déjà corrigé, merci ;D
Laurent Gomila - SFML developer