From fb6cdb92eac93ea20d183738ef3dd522763868a6 Mon Sep 17 00:00:00 2001 From: Stephan Dilly Date: Mon, 29 Jun 2020 19:48:39 +0200 Subject: [PATCH] fix whitespace at commit-msg start breaking revlog alignment (closes #158) --- asyncgit/src/sync/commits_info.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/asyncgit/src/sync/commits_info.rs b/asyncgit/src/sync/commits_info.rs index 9ff860d2..741ea30f 100644 --- a/asyncgit/src/sync/commits_info.rs +++ b/asyncgit/src/sync/commits_info.rs @@ -2,7 +2,6 @@ use super::utils::repo; use crate::error::Result; use git2::{Commit, Error, Oid}; use scopetime::scope_time; -use std::borrow::Cow; /// identifies a single commit #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] @@ -93,19 +92,20 @@ pub fn get_message( message_length_limit: Option, ) -> String { let msg = String::from_utf8_lossy(c.message_bytes()); + let msg = msg.trim_start(); if let Some(limit) = message_length_limit { - limit_str(msg, limit) + limit_str(msg, limit).to_string() } else { msg.to_string() } } -fn limit_str(s: Cow<'_, str>, limit: usize) -> String { +fn limit_str(s: &str, limit: usize) -> &str { if let Some(first) = s.lines().next() { - first.chars().take(limit).collect::() + &first[0..limit.min(first.len())] } else { - String::new() + "" } }