From 0e698e63b3bc27551fda9bd4e66f72501413b4e6 Mon Sep 17 00:00:00 2001 From: sfan5 Date: Mon, 1 Jun 2020 21:19:35 +0200 Subject: [PATCH] Fix autoscale_mode segfault if tile doesn't have texture closes #9965 --- src/nodedef.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/nodedef.cpp b/src/nodedef.cpp index cb841e544..a84338752 100644 --- a/src/nodedef.cpp +++ b/src/nodedef.cpp @@ -608,8 +608,9 @@ static void fillTileAttribs(ITextureSource *tsrc, TileLayer *layer, layer->material_type = material_type; bool has_scale = tiledef.scale > 0; - if (((tsettings.autoscale_mode == AUTOSCALE_ENABLE) && !has_scale) || - (tsettings.autoscale_mode == AUTOSCALE_FORCE)) { + bool use_autoscale = tsettings.autoscale_mode == AUTOSCALE_FORCE || + (tsettings.autoscale_mode == AUTOSCALE_ENABLE && !has_scale); + if (use_autoscale && layer->texture) { auto texture_size = layer->texture->getOriginalSize(); float base_size = tsettings.node_texture_size; float size = std::fmin(texture_size.Width, texture_size.Height);