Changeset 88 for yuvplayer

Show
Ignore:
Timestamp:
08/02/08 03:55:49 (2 years ago)
Author:
aqua
Message:

Remove some memory leak

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • yuvplayer/win/yuvplayer/OpenGLView.cpp

    r77 r88  
    3939{ 
    4040        CDocument* pDoc = GetDocument(); 
     41        HDC dc = ::GetDC(m_hWnd); 
    4142 
    4243        // TODO: add draw code here      
     
    5960                glEnd(); 
    6061        } 
    61         SwapBuffers( ::GetDC(m_hWnd) ); 
     62        SwapBuffers( dc ); 
     63 
     64        ::ReleaseDC( m_hWnd, dc ); 
    6265 
    6366} 
     
    182185void COpenGLView::LoadTexture(unsigned char* rgba) 
    183186{ 
    184         loaded = TRUE; 
    185187 
    186188        glBindTexture(GL_TEXTURE_2D, texture ); 
    187         glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA, t_width, t_height, 0, GL_RGBA, GL_UNSIGNED_BYTE, rgba ); 
    188  
     189        if( loaded ) 
     190                glTexSubImage2D( GL_TEXTURE_2D, 0, 0, 0, t_width, t_height, GL_RGBA, GL_UNSIGNED_BYTE, rgba ); 
     191        else{ 
     192                glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA, t_width, t_height, 0, GL_RGBA, GL_UNSIGNED_BYTE, rgba ); 
     193                loaded = TRUE; 
     194        } 
    189195        Invalidate(NULL); 
    190196}