From ff225b12c63632797fe716f3f85dc82c28d5f2e1 Mon Sep 17 00:00:00 2001 From: Nemo Date: Wed, 8 Apr 2020 00:55:59 +0530 Subject: [PATCH] Fix filenames with double-quotes --- spec/util_spec.cr | 9 +++++++++ src/util.cr | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 spec/util_spec.cr diff --git a/spec/util_spec.cr b/spec/util_spec.cr new file mode 100644 index 0000000..c808941 --- /dev/null +++ b/spec/util_spec.cr @@ -0,0 +1,9 @@ +require "../src/util" +require "./spec_helper" + +describe Muse::Dl::Util do + it "should sanitize filenames properly" do + fn = Muse::Dl::Util.slug_filename("Hello world - \" :A$3, a story; a poem|chapter") + fn.should eq "Hello world - - -A-3, a story- a poem-chapter" + end +end diff --git a/src/util.cr b/src/util.cr index 5ed414a..0ddd1ae 100644 --- a/src/util.cr +++ b/src/util.cr @@ -2,7 +2,7 @@ module Muse::Dl class Util # Generates a safe filename def self.slug_filename(input : String) - input.strip.tr("\u{202E}%$|:;/\t\r\n\\", "-") + input.strip.tr("\u{202E}%$|:;/\"\t\r\n\\", "-") end end end