std::ofstream::close crashea sin explicación aparente

Iniciado por class_OpenGL, 19 Diciembre 2015, 16:58 PM

0 Miembros y 1 Visitante están viendo este tema.

class_OpenGL

Hola, muy buenas a tod@s. El problema que tengo es que al intentar cerrar un archivo de un programa que estoy creando, la función que realiza eso crashea el programa.

El código es
Código (c++) [Seleccionar]
cPath.append(".bmp");
cFilteredImage.open(cPath,
                   std::ios_base::out | std::ios_base::trunc | std::ios_base::binary);
if(cFilteredImage.is_open() == true) {
       cFilteredImage.write(lpbyHeader, 54);

       for(unsigned int i = 0; i < stBmpData.uDataSize; i += stBmpData.uBitsPerPixel/8) {
               fVectorLength = calculateLength(&(stBmpData.lpbyData[i]));

               if(fVectorLength <= 100.0)
                       lpbyImageData[i/3] = true;
               else
                       lpbyImageData[i/3] = false;

               if(lpbyImageData[i/3] == true)
                       cFilteredImage.write("\xFF\xFF\xFF", 3);
               else
                       cFilteredImage.write("\x00\x00\x00", 3);
       }

       cFilteredImage.close();
}


A lo mejor la respuesta es obvia, pero no la veo :P Gracias por prestar atención

PD.: El archivo se escribe correctamente. El problema es al cerrarlo

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL

ivancea96

#1
¿Qué código de error lanza?

class_OpenGL

No lanza ningún código de error. El problema es en tiempo de ejecución. El programa se cierra inesperadamente (un crash) cuando se intenta cerrar el archivo (al final de este código).

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL

ivancea96

Depúralo, y sacarás un código de error.
Puedes usar cualquier debugguer q suelas usar.

class_OpenGL

Al final lo que he hecho es rehacer el código y ha resultado. Llevo tanto con esto que no tengo ganas de comprobar que era. Siento la intriga xD

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL