Skip to content

Commit ae4097d

Browse files
committed
Improvements
- Just improvements to the code that gets the name and generates the new file path for the rename function
1 parent 7603594 commit ae4097d

File tree

4 files changed

+25
-19
lines changed

4 files changed

+25
-19
lines changed

nfc_playlist.c

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -134,10 +134,15 @@ const NotificationSequence blink_sequence_error = {
134134

135135
void start_blink(NfcPlaylist* nfc_playlist, int state) {
136136
if (nfc_playlist->settings.emulate_led_indicator) {
137-
if (state == NfcPlaylistLedState_Normal) {
138-
notification_message_block(nfc_playlist->notification, &blink_sequence_normal);
139-
} else if (state == NfcPlaylistLedState_Error) {
140-
notification_message_block(nfc_playlist->notification, &blink_sequence_error);
137+
switch (state) {
138+
case NfcPlaylistLedState_Normal:
139+
notification_message_block(nfc_playlist->notification, &blink_sequence_normal);
140+
break;
141+
case NfcPlaylistLedState_Error:
142+
notification_message_block(nfc_playlist->notification, &blink_sequence_error);
143+
break;
144+
default:
145+
break;
141146
}
142147
}
143148
}

scenes/nfc_playlist_scene_emulation.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ int32_t nfc_playlist_emulation_task(void* context) {
5757
} else if(!delay_active) {
5858
delay_active = true;
5959
} else if(skip_delay) {
60-
skip_delay = false
60+
skip_delay = false;
6161
}
6262
}
6363

scenes/nfc_playlist_scene_playlist_rename.c

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,23 @@
33
int32_t nfc_playlist_playlist_rename_thread_task(void* context) {
44
NfcPlaylist* nfc_playlist = context;
55

6-
char const* old_file_path = furi_string_get_cstr(nfc_playlist->settings.playlist_path);
7-
char const* old_file_name = strchr(old_file_path, '/') != NULL ? &strrchr(old_file_path, '/')[1] : old_file_path;
8-
FuriString* new_file_path = furi_string_alloc_set_str(old_file_path);
9-
furi_string_replace(new_file_path, old_file_name, nfc_playlist->text_input_output);
6+
FuriString* old_file_path = furi_string_alloc();
7+
path_extract_dirname(furi_string_get_cstr(nfc_playlist->settings.playlist_path), old_file_path);
8+
FuriString* new_file_path = furi_string_alloc_set(old_file_path);
9+
path_concat(furi_string_get_cstr(old_file_path), nfc_playlist->text_input_output, new_file_path);
10+
furi_string_free(old_file_path);
1011
furi_string_cat_str(new_file_path, ".txt");
11-
12+
1213
Storage* storage = furi_record_open(RECORD_STORAGE);
1314

1415
if (!storage_file_exists(storage, furi_string_get_cstr(new_file_path))) {
15-
if (storage_common_rename(storage, old_file_path, furi_string_get_cstr(new_file_path)) == 0) {
16-
furi_string_move(nfc_playlist->settings.playlist_path, new_file_path);
16+
if (storage_common_rename(storage, furi_string_get_cstr(nfc_playlist->settings.playlist_path), furi_string_get_cstr(new_file_path)) == FSE_OK) {
17+
furi_string_swap(nfc_playlist->settings.playlist_path, new_file_path);
1718
}
1819
}
1920

21+
furi_string_free(new_file_path);
22+
2023
furi_record_close(RECORD_STORAGE);
2124

2225
return 0;
@@ -42,14 +45,12 @@ void nfc_playlist_playlist_rename_menu_callback(void* context) {
4245
void nfc_playlist_playlist_rename_scene_on_enter(void* context) {
4346
NfcPlaylist* nfc_playlist = context;
4447

45-
char const* tmp_file_path = furi_string_get_cstr(nfc_playlist->settings.playlist_path);
46-
char const* tmp_file_name = strchr(tmp_file_path, '/') != NULL ? &strrchr(tmp_file_path, '/')[1] : tmp_file_path;
47-
FuriString* tmp_file_name_furi = furi_string_alloc_set_str(tmp_file_name);
48-
furi_string_replace(tmp_file_name_furi, ".txt", "");
48+
FuriString* tmp_file_name = furi_string_alloc();
49+
path_extract_filename_no_ext(furi_string_get_cstr(nfc_playlist->settings.playlist_path), tmp_file_name);
4950

5051
nfc_playlist->text_input_output = malloc(MAX_PLAYLIST_NAME_LEN + 1);
51-
strcpy(nfc_playlist->text_input_output, furi_string_get_cstr(tmp_file_name_furi));
52-
furi_string_free(tmp_file_name_furi);
52+
strcpy(nfc_playlist->text_input_output, furi_string_get_cstr(tmp_file_name));
53+
furi_string_free(tmp_file_name);
5354

5455
text_input_set_header_text(nfc_playlist->text_input, "Enter new file name");
5556
text_input_set_minimum_length(nfc_playlist->text_input, 1);

scenes/nfc_playlist_scene_playlist_select.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ void nfc_playlist_playlist_select_menu_callback(void* context) {
1717
furi_string_free(line);
1818
file_stream_close(stream);
1919
}
20-
20+
2121
stream_free(stream);
2222
furi_record_close(RECORD_STORAGE);
2323

0 commit comments

Comments
 (0)