upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/src/lib/git
diff options
context:
space:
mode:
authorDanConwayDev <DanConwayDev@protonmail.com>2024-12-12 11:31:51 +0000
committerDanConwayDev <DanConwayDev@protonmail.com>2024-12-12 11:32:48 +0000
commit6f45aa9937602f3d03cd83cfb5fb3c541fac4adf (patch)
treec64277a455b0b8c07c4e501a0716f16365b88c33 /src/lib/git
parent2b49a548169bf9bc3a3ef667a7e952e31e878bab (diff)
fix: defend against empty`tags`
prevent a panic when tags are of an unexpect length
Diffstat (limited to 'src/lib/git')
-rw-r--r--src/lib/git/mod.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lib/git/mod.rs b/src/lib/git/mod.rs
index 0615213..7a7ad5d 100644
--- a/src/lib/git/mod.rs
+++ b/src/lib/git/mod.rs
@@ -850,7 +850,7 @@ fn git_sig_to_tag_vec(sig: &git2::Signature) -> Vec<String> {
850fn extract_sig_from_patch_tags<'a>(tags: &'a Tags, tag_name: &str) -> Result<git2::Signature<'a>> { 850fn extract_sig_from_patch_tags<'a>(tags: &'a Tags, tag_name: &str) -> Result<git2::Signature<'a>> {
851 let v = tags 851 let v = tags
852 .iter() 852 .iter()
853 .find(|t| t.as_slice()[0].eq(tag_name)) 853 .find(|t| !t.as_slice().is_empty() && t.as_slice()[0].eq(tag_name))
854 .context(format!("tag '{tag_name}' not present in patch"))? 854 .context(format!("tag '{tag_name}' not present in patch"))?
855 .as_slice(); 855 .as_slice();
856 if v.len() != 5 { 856 if v.len() != 5 {