diff --git a/firmware/application/apps/ui_fileman.cpp b/firmware/application/apps/ui_fileman.cpp
index 74438e3215499694ea4c79454907d106812de6b4..f19cee3c80166138ef407aa395b7ee6b77d08158 100644
--- a/firmware/application/apps/ui_fileman.cpp
+++ b/firmware/application/apps/ui_fileman.cpp
@@ -249,7 +249,11 @@ FileLoadView::FileLoadView(
 
 void FileManagerView::on_rename(NavigationView& nav) {
 	text_prompt(nav, name_buffer, max_filename_length, [this](std::string& buffer) {
-		rename_file(get_selected_path(), buffer);
+		std::string destination_path = current_path.string();
+		if (destination_path.back() != '/')
+			destination_path += '/';
+		destination_path = destination_path + buffer;
+		rename_file(get_selected_path(), destination_path);
 		load_directory_contents(current_path);
 		refresh_list();
 	});