Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/NesTiler.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com>2022-10-27 16:40:26 +0300
committerAlexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com>2022-10-27 16:40:26 +0300
commit63709d7d298968d62c754c5f6a114316de3bec61 (patch)
tree5d79697f3a54669d715f77748e29d7d77539406a
parentd35f30394a061396eea0409aaad64b99b2eb59c0 (diff)
Crop overflow check.
-rw-r--r--NesTiler/FastBitmap.cs2
-rw-r--r--NesTiler/Program.cs2
2 files changed, 3 insertions, 1 deletions
diff --git a/NesTiler/FastBitmap.cs b/NesTiler/FastBitmap.cs
index fb92468..5910f43 100644
--- a/NesTiler/FastBitmap.cs
+++ b/NesTiler/FastBitmap.cs
@@ -1,4 +1,5 @@
using SkiaSharp;
+using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
@@ -17,6 +18,7 @@ namespace com.clusterrr.Famicom.NesTiler
{
Width = skBitmap.Width;
Height = height <= 0 ? skBitmap.Height - verticalOffset : height;
+ if (skBitmap.Height - verticalOffset - Height <= 0) throw new InvalidOperationException("Invalid image height.");
var pixels = skBitmap.Pixels;
colors = skBitmap.Pixels.Skip(verticalOffset * Width).Take(Width * Height).Select(p => Color.FromArgb(p.Alpha, p.Red, p.Green, p.Blue)).ToArray();
}
diff --git a/NesTiler/Program.cs b/NesTiler/Program.cs
index 09e6519..852cbc1 100644
--- a/NesTiler/Program.cs
+++ b/NesTiler/Program.cs
@@ -225,7 +225,7 @@ namespace com.clusterrr.Famicom.NesTiler
if (calculatedPalettes.Count > maxCalculatedPaletteCount && !c.Lossy)
{
- throw new ArgumentOutOfRangeException($"Can't fit {calculatedPalettes.Count} palettes, {maxCalculatedPaletteCount} is maximum.");
+ throw new InvalidOperationException($"Can't fit {calculatedPalettes.Count} palettes, {maxCalculatedPaletteCount} is maximum.");
}
// Select palettes