From d43984923efac64372b323339c9b97e17e218146 Mon Sep 17 00:00:00 2001
From: comp500 <comp500@users.noreply.github.com>
Date: Mon, 14 Feb 2022 20:12:13 +0000
Subject: [PATCH] Prefer SHA1 hash first for Modrinth files

---
 modrinth/modrinth.go | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/modrinth/modrinth.go b/modrinth/modrinth.go
index 69a4d4a..c384ca7 100644
--- a/modrinth/modrinth.go
+++ b/modrinth/modrinth.go
@@ -316,8 +316,12 @@ func shouldDownloadOnSide(side string) bool {
 }
 
 func (v VersionFile) getBestHash() (string, string) {
-	//try preferred hashes first
-	val, exists := v.Hashes["sha512"]
+	// Try preferred hashes first; SHA1 is first as it is required for Modrinth pack exporting
+	val, exists := v.Hashes["sha1"]
+	if exists {
+		return "sha1", val
+	}
+	val, exists = v.Hashes["sha512"]
 	if exists {
 		return "sha512", val
 	}
@@ -325,7 +329,7 @@ func (v VersionFile) getBestHash() (string, string) {
 	if exists {
 		return "sha256", val
 	}
-	val, exists = v.Hashes["murmur2"]
+	val, exists = v.Hashes["murmur2"] // (not defined in Modrinth pack spec, use with caution)
 	if exists {
 		return "murmur2", val
 	}