GenericBitmap *pBmp =
new FileBitmap( getIntf(), m_pImageHandler,
rData.m_fileName, rData.m_alphaColor );
+ if( !pBmp->getData() )
+ {
+ // Invalid bitmap
+ delete pBmp;
+ return;
+ }
m_pTheme->m_bitmaps[rData.m_id] = GenericBitmapPtr( pBmp );
}
{
GenericBitmap *pBmp =
new FileBitmap( getIntf(), m_pImageHandler, rData.m_file, 0 );
+ if( !pBmp->getData() )
+ {
+ // invalid bitmap
+ delete pBmp;
+ return;
+ }
+
m_pTheme->m_bitmaps[rData.m_id] = GenericBitmapPtr( pBmp );
GenericFont *pFont = new BitmapFont( getIntf(), *pBmp, rData.m_type );
FileBitmap::FileBitmap( intf_thread_t *pIntf, image_handler_t *pImageHandler,
string fileName, uint32_t aColor ):
- GenericBitmap( pIntf ), m_width( 0 ), m_height( 0 )
+ GenericBitmap( pIntf ), m_width( 0 ), m_height( 0 ), m_pData( NULL )
{
video_format_t fmt_in = {0}, fmt_out = {0};
picture_t *pPic;
{
int srcWidth = rSource.getWidth();
uint32_t *pSrc = (uint32_t*)rSource.getData() + ySrc * srcWidth + xSrc;
+ if( !pSrc )
+ {
+ return;
+ }
+
uint32_t *pDest = (uint32_t*)m_pData + yDest * m_width + xDest ;
for( int y = 0; y < height; y++ )
{
}
else
{
- // No XML file, assume it is a winamp2 skin
- path = tempPath;
-
- // Look for winamp2.xml in the resource path
- list<string> resPath = pOsFactory->getResourcePath();
- list<string>::const_iterator it;
- for( it = resPath.begin(); it != resPath.end(); it++ )
+ // No XML file, check if it is a winamp2 skin
+ string mainBmp;
+ if( findFile( tempPath, "main.bmp", mainBmp ) )
{
- if( findFile( *it, WINAMP2_XML_FILE, xmlFile ) )
- break;
+ msg_Dbg( getIntf(), "Try to load a winamp2 skin" );
+ path = getFilePath( mainBmp );
+
+ // Look for winamp2.xml in the resource path
+ list<string> resPath = pOsFactory->getResourcePath();
+ list<string>::const_iterator it;
+ for( it = resPath.begin(); it != resPath.end(); it++ )
+ {
+ if( findFile( *it, WINAMP2_XML_FILE, xmlFile ) )
+ break;
+ }
}
}
<SubBitmap id="quit_up" x="18" y="0" width="9" height="9" />
<SubBitmap id="quit_down" x="18" y="9" width="9" height="9" />
</Bitmap>
+ <BitmapFont id="digits_font" file="numbers.bmp" type="digits"/>
<BitmapFont id="digits_font" file="nums_ex.bmp" type="digits"/>
<BitmapFont id="text_font" file="text.bmp" type="text"/>