Skip to content

Commit

Permalink
Revert "Make downloadThumbnail isolate-safe"
Browse files Browse the repository at this point in the history
This reverts commit a8a9330.
  • Loading branch information
Hedon-dev committed Jan 22, 2025
1 parent 5107bb2 commit 88f55aa
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 20 deletions.
22 changes: 6 additions & 16 deletions lib/services/database_manager.dart
Original file line number Diff line number Diff line change
Expand Up @@ -336,18 +336,13 @@ Future<void> addToWatchHistory(
List<Map<String, Object?>> oldEntry = await _database.query("watch_history",
columns: ["addedOn"], where: "videoID = ?", whereArgs: [result.videoID]);
if (["homepage", "results", "favorites"].contains(sourceScreenType)) {
Uint8List thumbnailBinary = Uint8List(0);
try {
thumbnailBinary =
await result.plugin!.downloadThumbnail(Uri.parse(result.thumbnail!));
} catch (e, stacktrace) {
logger.e("Error downloading thumbnail: $e\n$stacktrace");
}
Map<String, Object?> newEntryData = {
"videoID": result.videoID,
"title": result.title,
"plugin": result.plugin?.codeName ?? "null",
"thumbnailBinary": thumbnailBinary,
"thumbnailBinary": await result.plugin
?.downloadThumbnail(Uri.parse(result.thumbnail ?? "")) ??
Uint8List(0),
"durationInSeconds": result.duration?.inSeconds ?? -1,
"maxQuality": result.maxQuality ?? -1,
"virtualReality": result.virtualReality ? 1 : 0,
Expand Down Expand Up @@ -395,18 +390,13 @@ Future<void> addToWatchHistory(
Future<void> addToFavorites(UniversalVideoPreview result) async {
logger.d("Adding to favorites: ");
result.printAllAttributes();
Uint8List thumbnailBinary = Uint8List(0);
try {
thumbnailBinary =
await result.plugin!.downloadThumbnail(Uri.parse(result.thumbnail!));
} catch (e, stacktrace) {
logger.e("Error downloading thumbnail: $e\n$stacktrace");
}
await _database.insert("favorites", <String, Object?>{
"videoID": result.videoID,
"title": result.title,
"plugin": result.plugin?.codeName ?? "null",
"thumbnailBinary": thumbnailBinary,
"thumbnailBinary": await result.plugin
?.downloadThumbnail(Uri.parse(result.thumbnail ?? "")) ??
Uint8List(0),
"durationInSeconds": result.duration?.inSeconds ?? -1,
"maxQuality": result.maxQuality ?? -1,
"virtualReality": result.virtualReality ? 1 : 0,
Expand Down
9 changes: 5 additions & 4 deletions lib/utils/official_plugin.dart
Original file line number Diff line number Diff line change
Expand Up @@ -111,18 +111,19 @@ abstract class OfficialPlugin {
/// This is the actual function for getting thumbnails that is specific to each official plugin
Future<void> isolateGetProgressThumbnails(SendPort sendPort);

// This function is used by isolateGetProgressThumbnails and therefore cant contain logger calls
Future<Uint8List> downloadThumbnail(Uri uri) async {
try {
var response = await client.get(uri);
if (response.statusCode == 200) {
return response.bodyBytes;
} else {
throw Exception("Error downloading preview: ${response.statusCode} - "
"${response.reasonPhrase}");
logger.e(
"Error downloading preview: ${response.statusCode} - ${response.reasonPhrase}");
return Uint8List(0);
}
} catch (e, stacktrace) {
throw Exception("Error downloading preview: $e\n$stacktrace");
logger.e("Error downloading preview: $e\n$stacktrace");
return Uint8List(0);
}
}

Expand Down

0 comments on commit 88f55aa

Please sign in to comment.