mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-05-29 17:46:29 +03:00
Minor fix in gif delay calculation.
This commit is contained in:
@@ -1092,6 +1092,14 @@ std::pair<std::vector<Image>, int> Image::loadGif( IOStream& stream ) {
|
||||
}
|
||||
|
||||
auto delay = delays[0];
|
||||
if ( delay == 0 ) {
|
||||
for ( int i = 0; i < frames; i++ ) {
|
||||
if ( delays[i] != 0 ) {
|
||||
delay = delays[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
free( data );
|
||||
free( delays );
|
||||
return { std::move( gif ), delay ? delay : 100 };
|
||||
|
||||
@@ -717,11 +717,15 @@ Sizef Sprite::setSize( const unsigned int& FrameNum, const unsigned int& SubFram
|
||||
}
|
||||
|
||||
Sizef Sprite::getSize() {
|
||||
return mFrames[mCurrentFrame].Spr[mCurrentSubFrame]->getSize();
|
||||
return mCurrentFrame < mFrames.size() && mCurrentSubFrame < mFrames[mCurrentFrame].Spr.size()
|
||||
? mFrames[mCurrentFrame].Spr[mCurrentSubFrame]->getSize()
|
||||
: Sizef::Zero;
|
||||
}
|
||||
|
||||
Sizef Sprite::getPixelsSize() {
|
||||
return mFrames[mCurrentFrame].Spr[mCurrentSubFrame]->getPixelsSize();
|
||||
return mCurrentFrame < mFrames.size() && mCurrentSubFrame < mFrames[mCurrentFrame].Spr.size()
|
||||
? mFrames[mCurrentFrame].Spr[mCurrentSubFrame]->getPixelsSize()
|
||||
: Sizef::Zero;
|
||||
}
|
||||
|
||||
void Sprite::setRepetitions( const int& Repeations ) {
|
||||
|
||||
@@ -980,6 +980,14 @@ std::pair<std::vector<Texture*>, int> Texture::loadGif( IOStream& stream ) {
|
||||
}
|
||||
|
||||
auto delay = delays[0];
|
||||
if ( delay == 0 ) {
|
||||
for ( int i = 0; i < frames; i++ ) {
|
||||
if ( delays[i] != 0 ) {
|
||||
delay = delays[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
free( data );
|
||||
free( delays );
|
||||
return { std::move( gif ), delay ? delay : 100 };
|
||||
|
||||
2
src/thirdparty/SOIL2
vendored
2
src/thirdparty/SOIL2
vendored
Submodule src/thirdparty/SOIL2 updated: 5b4b2e6ead...1acee655f0
Reference in New Issue
Block a user