From a80426bd0e5319be6bd2e98d3e6e712b9e634f62 Mon Sep 17 00:00:00 2001 From: Cara Date: Sat, 25 Apr 2020 03:23:30 +0930 Subject: [PATCH] Don't crash when selecting currencies Catch error when loading an invalid texture. --- Dalamud/Interface/ItemSearchWindow.cs | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/Dalamud/Interface/ItemSearchWindow.cs b/Dalamud/Interface/ItemSearchWindow.cs index 1261b0e97..9d2d9a4cd 100644 --- a/Dalamud/Interface/ItemSearchWindow.cs +++ b/Dalamud/Interface/ItemSearchWindow.cs @@ -142,11 +142,20 @@ namespace Dalamud.Interface { this.selectedItemIndex = i; - var iconTex = this.data.GetIcon(this.searchTask.Result[i].Icon); - this.selectedItemTex?.Dispose(); - this.selectedItemTex = - this.builder.LoadImageRaw(iconTex.GetRgbaImageData(), iconTex.Header.Width, - iconTex.Header.Height, 4); + try + { + var iconTex = this.data.GetIcon(this.searchTask.Result[i].Icon); + this.selectedItemTex?.Dispose(); + + this.selectedItemTex = + this.builder.LoadImageRaw(iconTex.GetRgbaImageData(), iconTex.Header.Width, + iconTex.Header.Height, 4); + } catch (Exception ex) + { + Log.Debug("Failed loading item texture"); + this.selectedItemTex?.Dispose(); + this.selectedItemTex = null; + } } } }