From 320d25d2c43929ddcc25cb22979bbdd3aaffd3b7 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sat, 05 Apr 2025 14:07:58 +0800 Subject: [PATCH] Reduce allocations when converting string to []byte --- http_handle_repo_index.go | 2 +- http_handle_repo_raw.go | 4 ++-- http_handle_repo_tree.go | 4 ++-- readme_to_html.go | 2 +- diff --git a/http_handle_repo_index.go b/http_handle_repo_index.go index 36e71d7845c84c113c0194ee62d703fb40d39f8b..b0a5899d9b29ae2fa68ef3abea2690b57d677231 100644 --- a/http_handle_repo_index.go +++ b/http_handle_repo_index.go @@ -45,7 +45,7 @@ writer := bare.NewWriter(conn) reader := bare.NewReader(conn) - if err := writer.WriteData([]byte(repoPath)); err != nil { + if err := writer.WriteData(stringToBytes(repoPath)); err != nil { errorPage500(w, params, "sending repo path failed: "+err.Error()) return } diff --git a/http_handle_repo_raw.go b/http_handle_repo_raw.go index 8a9740e8bbfacb12f46fce05cc8a2842fbe46e1f..5c8f62679e2dcd5625a3bcaea179941d4e60001b 100644 --- a/http_handle_repo_raw.go +++ b/http_handle_repo_raw.go @@ -36,7 +36,7 @@ brWriter := bare.NewWriter(conn) brReader := bare.NewReader(conn) - if err := brWriter.WriteData([]byte(repoPath)); err != nil { + if err := brWriter.WriteData(stringToBytes(repoPath)); err != nil { errorPage500(writer, params, "sending repo path failed: "+err.Error()) return } @@ -44,7 +44,7 @@ if err := brWriter.WriteUint(2); err != nil { errorPage500(writer, params, "sending command failed: "+err.Error()) return } - if err := brWriter.WriteData([]byte(pathSpec)); err != nil { + if err := brWriter.WriteData(stringToBytes(pathSpec)); err != nil { errorPage500(writer, params, "sending path failed: "+err.Error()) return } diff --git a/http_handle_repo_tree.go b/http_handle_repo_tree.go index 0228df3a4bb3f7d0a942d0edec515423357d9a29..c834ad9b60e6b48a5d482e0e87b94368dd8a170a 100644 --- a/http_handle_repo_tree.go +++ b/http_handle_repo_tree.go @@ -38,7 +38,7 @@ brWriter := bare.NewWriter(conn) brReader := bare.NewReader(conn) - if err := brWriter.WriteData([]byte(repoPath)); err != nil { + if err := brWriter.WriteData(stringToBytes(repoPath)); err != nil { errorPage500(writer, params, "sending repo path failed: "+err.Error()) return } @@ -46,7 +46,7 @@ if err := brWriter.WriteUint(2); err != nil { errorPage500(writer, params, "sending command failed: "+err.Error()) return } - if err := brWriter.WriteData([]byte(pathSpec)); err != nil { + if err := brWriter.WriteData(stringToBytes(pathSpec)); err != nil { errorPage500(writer, params, "sending path failed: "+err.Error()) return } diff --git a/readme_to_html.go b/readme_to_html.go index e0212e92dcbc0423819c8bac2adb96e8d03d2587..c5cc706dcb09187ea87c0b8aee2a178819aacd94 100644 --- a/readme_to_html.go +++ b/readme_to_html.go @@ -35,7 +35,7 @@ contents, err := file.Contents() if err != nil { return "Error fetching README", escapeHTML("Unable to fetch contents of " + name + ": " + err.Error()) } - return renderReadme([]byte(contents), name) + return renderReadme(stringToBytes(contents), name) } return "", "" } -- 2.48.1