diff --git a/BeefTools/ImgCreate/ImgCreate.cpp b/BeefTools/ImgCreate/ImgCreate.cpp index 7890ca01..7f4cb08b 100644 --- a/BeefTools/ImgCreate/ImgCreate.cpp +++ b/BeefTools/ImgCreate/ImgCreate.cpp @@ -248,6 +248,9 @@ int main() auto _HasUniqueThemeImage = [&](int col, int row, int size) { + if (!_HasImage(col, row, 1, size)) + return false; + int scale = 1 << size; auto srcImage0 = imageDatas[0][size]; if (srcImage0 == NULL) diff --git a/IDE/dist/images/ImgCreate.exe b/IDE/dist/images/ImgCreate.exe index c819e287..50893e7e 100644 Binary files a/IDE/dist/images/ImgCreate.exe and b/IDE/dist/images/ImgCreate.exe differ diff --git a/IDE/src/Settings.bf b/IDE/src/Settings.bf index a3e8fa77..5f21e60c 100644 --- a/IDE/src/Settings.bf +++ b/IDE/src/Settings.bf @@ -469,6 +469,9 @@ namespace IDE mColors.Deserialize(sd); } + String imgCreatePath = scope String(gApp.mInstallDir, "images/ImgCreate.exe"); + let imgCreateExeTime = File.GetLastWriteTime(imgCreatePath).GetValueOrDefault(); + for (let theme in mTheme) { String relPath = scope .()..Append(gApp.mInstallDir, "themes/"); @@ -523,12 +526,12 @@ namespace IDE needsRebuild = true; if (origImageTime > minDestImgTime) needsRebuild = true; + if (imgCreateExeTime > minDestImgTime) + needsRebuild = true; } if (needsRebuild) { - String imgCreatePath = scope String(absPath, "../../images/ImgCreate.exe"); - ProcessStartInfo procInfo = scope ProcessStartInfo(); procInfo.UseShellExecute = false; procInfo.RedirectStandardError = true;