From: Vadim Zeitlin Date: Mon, 14 Apr 2003 00:46:59 +0000 (+0000) Subject: don't crash if an image is not found X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/30ad0a14694aee1e7beccce042593e1ed4fedba7 don't crash if an image is not found git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20208 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/samples/image/image.cpp b/samples/image/image.cpp index 3565381acf..6c96a7505b 100644 --- a/samples/image/image.cpp +++ b/samples/image/image.cpp @@ -406,8 +406,8 @@ MyCanvas::MyCanvas( wxWindow *parent, wxWindowID id, image.Destroy(); - image.LoadFile( dir + _T("test.png") ); - my_square = new wxBitmap( image ); + if ( image.LoadFile( dir + _T("test.png") ) ) + my_square = new wxBitmap( image ); image.Destroy(); @@ -549,20 +549,23 @@ MyCanvas::MyCanvas( wxWindow *parent, wxWindowID id, // test image loading from stream wxFile file(dir + _T("horse.bmp")); - off_t len = file.Length(); - void *data = malloc(len); - if ( file.Read(data, len) != len ) - wxLogError(_T("Reading bitmap file failed")); - else + if ( file.IsOpened() ) { - wxMemoryInputStream mis(data, len); - if ( !image.LoadFile(mis) ) - wxLogError(wxT("Can't load BMP image from stream")); + off_t len = file.Length(); + void *data = malloc(len); + if ( file.Read(data, len) != len ) + wxLogError(_T("Reading bitmap file failed")); else - my_horse_bmp2 = new wxBitmap( image ); - } + { + wxMemoryInputStream mis(data, len); + if ( !image.LoadFile(mis) ) + wxLogError(wxT("Can't load BMP image from stream")); + else + my_horse_bmp2 = new wxBitmap( image ); + } - free(data); + free(data); + } } MyCanvas::~MyCanvas()