mirror of
https://github.com/KRTirtho/spotube.git
synced 2025-09-13 07:55:18 +00:00
fix: sanitize song title for file name (#644)
This commit is contained in:
parent
08b627e86a
commit
1a7ea0ce6a
@ -14,6 +14,7 @@ import 'package:spotube/provider/user_preferences_provider.dart';
|
||||
import 'package:spotube/provider/youtube_provider.dart';
|
||||
import 'package:spotube/services/download_manager/download_manager.dart';
|
||||
import 'package:spotube/services/youtube/youtube.dart';
|
||||
import 'package:spotube/utils/primitive_utils.dart';
|
||||
import 'package:spotube/utils/type_conversion_utils.dart';
|
||||
|
||||
class DownloadManagerProvider extends ChangeNotifier {
|
||||
@ -130,7 +131,7 @@ class DownloadManagerProvider extends ChangeNotifier {
|
||||
String getTrackFileUrl(Track track) {
|
||||
final name =
|
||||
"${track.name} - ${TypeConversionUtils.artists_X_String(track.artists ?? <Artist>[])}.m4a";
|
||||
return join(downloadDirectory, name);
|
||||
return join(downloadDirectory, PrimitiveUtils.toSafeFileName(name));
|
||||
}
|
||||
|
||||
bool isActive(Track track) {
|
||||
|
@ -57,4 +57,8 @@ abstract class PrimitiveUtils {
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
static String toSafeFileName(String str) {
|
||||
return str.replaceAll(RegExp(r'[^\w\s\.\-_]'), "_");
|
||||
}
|
||||
}
|
||||
|
@ -1090,10 +1090,10 @@ packages:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: media_kit_libs_android_audio
|
||||
sha256: "767a93c44da73b7103a1fcbe2346f7211b7c44fa727f359410e690a156f630c5"
|
||||
sha256: f16e67d4c5a85cb603290da253456bc8ea3d85d932c778e3afd11195db2dc26d
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.3.1"
|
||||
version: "1.3.2"
|
||||
media_kit_libs_ios_audio:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
Loading…
Reference in New Issue
Block a user