mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-02-03 12:59:33 +00:00
(svn r14208) -Fix (r14197): Crash if no .obg files are found.
This commit is contained in:
parent
dc2ace2494
commit
744b3527e5
@ -169,9 +169,9 @@ static bool FileMD5(const MD5File file)
|
|||||||
* Determine the graphics pack that has to be used.
|
* Determine the graphics pack that has to be used.
|
||||||
* The one with the most correct files wins.
|
* The one with the most correct files wins.
|
||||||
*/
|
*/
|
||||||
static void DetermineGraphicsPack()
|
static bool DetermineGraphicsPack()
|
||||||
{
|
{
|
||||||
if (_used_graphics_set != NULL) return;
|
if (_used_graphics_set != NULL) return true;
|
||||||
|
|
||||||
const GraphicsSet *best = _available_graphics_sets;
|
const GraphicsSet *best = _available_graphics_sets;
|
||||||
for (const GraphicsSet *c = _available_graphics_sets; c != NULL; c = c->next) {
|
for (const GraphicsSet *c = _available_graphics_sets; c != NULL; c = c->next) {
|
||||||
@ -182,6 +182,7 @@ static void DetermineGraphicsPack()
|
|||||||
}
|
}
|
||||||
|
|
||||||
_used_graphics_set = best;
|
_used_graphics_set = best;
|
||||||
|
return _used_graphics_set != NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -191,6 +192,7 @@ static void DetermineGraphicsPack()
|
|||||||
*/
|
*/
|
||||||
static void DeterminePalette()
|
static void DeterminePalette()
|
||||||
{
|
{
|
||||||
|
assert(_used_graphics_set != NULL);
|
||||||
if (_use_palette < MAX_PAL) return;
|
if (_use_palette < MAX_PAL) return;
|
||||||
|
|
||||||
_use_palette = _used_graphics_set->palette;
|
_use_palette = _used_graphics_set->palette;
|
||||||
@ -203,7 +205,6 @@ static void DeterminePalette()
|
|||||||
*/
|
*/
|
||||||
void CheckExternalFiles()
|
void CheckExternalFiles()
|
||||||
{
|
{
|
||||||
DetermineGraphicsPack();
|
|
||||||
DeterminePalette();
|
DeterminePalette();
|
||||||
|
|
||||||
static const size_t ERROR_MESSAGE_LENGTH = 128;
|
static const size_t ERROR_MESSAGE_LENGTH = 128;
|
||||||
@ -468,7 +469,7 @@ void FindGraphicsSets()
|
|||||||
bool SetGraphicsSet(const char *name)
|
bool SetGraphicsSet(const char *name)
|
||||||
{
|
{
|
||||||
if (StrEmpty(name)) {
|
if (StrEmpty(name)) {
|
||||||
DetermineGraphicsPack();
|
if (!DetermineGraphicsPack()) return false;
|
||||||
CheckExternalFiles();
|
CheckExternalFiles();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user