From 544400b138921fec850e85a3b94be1ebe3155406 Mon Sep 17 00:00:00 2001 From: Garret Alfert Date: Mon, 22 Oct 2012 12:19:48 +0200 Subject: [PATCH] Escape the directory name when saving it as an index (fixes #15) --- lib/remote_storage/riak.rb | 4 ++-- spec/directories_spec.rb | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/remote_storage/riak.rb b/lib/remote_storage/riak.rb index c8d0c13..a316b73 100644 --- a/lib/remote_storage/riak.rb +++ b/lib/remote_storage/riak.rb @@ -72,7 +72,7 @@ module RemoteStorage directory_index = directory == "" ? "/" : directory object.indexes.merge!({:user_id_bin => [user], - :directory_bin => [directory_index]}) + :directory_bin => [CGI.escape(directory_index)]}) object.store object.reload @@ -215,7 +215,7 @@ module RemoteStorage directory_object.data = timestamp.to_s directory_object.indexes.merge!({:user_id_bin => [user]}) if parent_directory - directory_object.indexes.merge!({:directory_bin => [parent_directory]}) + directory_object.indexes.merge!({:directory_bin => [CGI.escape(parent_directory)]}) end directory_object.store end diff --git a/spec/directories_spec.rb b/spec/directories_spec.rb index cf3a2da..12a6248 100644 --- a/spec/directories_spec.rb +++ b/spec/directories_spec.rb @@ -196,7 +196,7 @@ describe "Directories" do put "/jimmy/tasks/home/trash", "take out the trash" object = directory_bucket.get("jimmy:tasks") - object.indexes["directory_bin"].must_include "/" + object.indexes["directory_bin"].must_include CGI.escape("/") object.data.wont_be_nil object = directory_bucket.get("jimmy:")