From 0f18be24b51ea3c74879ede2d7ab0546b7e01571 Mon Sep 17 00:00:00 2001 From: Leonid Mokrushin Date: Tue, 28 Mar 2023 10:58:26 +0200 Subject: [PATCH 1/8] encode database labels using URL encoding --- Cargo.toml | 1 + src/storage/directory.rs | 33 +++++++++++++++++++++++++++------ 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index ad03b3b2..2dc7f811 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -34,6 +34,7 @@ base64 = "0.13" hex = "0.4" regex = "1.5" lru = "0.10" +urlencoding = "2.1.2" [dev-dependencies] tempfile = "3.1" diff --git a/src/storage/directory.rs b/src/storage/directory.rs index 54702adc..50c1f200 100644 --- a/src/storage/directory.rs +++ b/src/storage/directory.rs @@ -9,6 +9,7 @@ use std::sync::Arc; use tokio::fs::{self, *}; use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt, BufWriter}; use tokio::sync::RwLock; +use urlencoding::{encode,decode}; use async_trait::async_trait; @@ -219,6 +220,8 @@ fn get_label_from_data(name: String, data: &[u8]) -> io::Result