1330Fermer1332
ZephLe 30/12/2015 à 19:07
[edit] cross, mais comme on a des propositions différentes je laisse smile

Comme ton code de nettoyage est toujours le même, tu devrais pouvoir le factoriser assez facilement. Par contre c'est une solution qui ne s'applique pas si chaque étape ajoute une nouvelle action de nettoyage en cas d'échec. Bon, je me permets de virer les accolades pour les corps d'instruction d'une seule ligne parce que j'aime pas tongue // Create the button texture (transparent) and set it as render target m_Texture = SDL_CreateTexture(Game::get()->renderer(), px, SDL_TEXTUREACCESS_TARGET, width, height); if (m_Texture == nullptr) throw Exception(ERROR_SDL_STR); if (SDL_SetTextureBlendMode(m_Texture, SDL_BLENDMODE_BLEND) != 0 || SDL_SetRenderDrawColor(Game::get()->renderer(), 0, 0, 0, 0) != 0 || SDL_RenderClear(Game::get()->renderer()) != 0 || SDL_SetRenderTarget(Game::get()->renderer(), m_Texture) != 0) { cleanup(); throw Exception(ERROR_SDL_STR); }