Skip to content

Commit 50e8189

Browse files
authored
Merge pull request #13385 from arjun1194/fix/use-application-context-for-enqueue
Fix NullPointerException in enqueue actions by using Application Context
2 parents b7c339c + 07a2ab2 commit 50e8189

File tree

1 file changed

+21
-15
lines changed

1 file changed

+21
-15
lines changed

app/src/main/java/org/schabi/newpipe/info_list/dialog/StreamDialogDefaultEntry.java

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import static org.schabi.newpipe.util.SparseItemUtil.fetchStreamInfoAndSaveToDatabase;
66
import static org.schabi.newpipe.util.SparseItemUtil.fetchUploaderUrlIfSparse;
77

8+
import android.content.Context;
89
import android.net.Uri;
910

1011
import androidx.annotation.NonNull;
@@ -52,28 +53,33 @@ public enum StreamDialogDefaultEntry {
5253
/**
5354
* Enqueues the stream automatically to the current PlayerType.
5455
*/
55-
ENQUEUE(R.string.enqueue_stream, (fragment, item) ->
56-
fetchItemInfoIfSparse(fragment.requireContext(), item, singlePlayQueue ->
57-
NavigationHelper.enqueueOnPlayer(fragment.getContext(), singlePlayQueue))
58-
),
56+
ENQUEUE(R.string.enqueue_stream, (fragment, item) -> {
57+
final Context ctx = fragment.requireContext().getApplicationContext();
58+
fetchItemInfoIfSparse(ctx, item, singlePlayQueue ->
59+
NavigationHelper.enqueueOnPlayer(ctx, singlePlayQueue));
60+
}),
5961

6062
/**
6163
* Enqueues the stream automatically to the current PlayerType
6264
* after the currently playing stream.
6365
*/
64-
ENQUEUE_NEXT(R.string.enqueue_next_stream, (fragment, item) ->
65-
fetchItemInfoIfSparse(fragment.requireContext(), item, singlePlayQueue ->
66-
NavigationHelper.enqueueNextOnPlayer(fragment.getContext(), singlePlayQueue))
67-
),
66+
ENQUEUE_NEXT(R.string.enqueue_next_stream, (fragment, item) -> {
67+
final Context ctx = fragment.requireContext().getApplicationContext();
68+
fetchItemInfoIfSparse(ctx, item, singlePlayQueue ->
69+
NavigationHelper.enqueueNextOnPlayer(ctx, singlePlayQueue));
70+
}),
6871

69-
START_HERE_ON_BACKGROUND(R.string.start_here_on_background, (fragment, item) ->
70-
fetchItemInfoIfSparse(fragment.requireContext(), item, singlePlayQueue ->
71-
NavigationHelper.playOnBackgroundPlayer(
72-
fragment.getContext(), singlePlayQueue, true))),
72+
START_HERE_ON_BACKGROUND(R.string.start_here_on_background, (fragment, item) -> {
73+
final Context ctx = fragment.requireContext().getApplicationContext();
74+
fetchItemInfoIfSparse(ctx, item, singlePlayQueue ->
75+
NavigationHelper.playOnBackgroundPlayer(ctx, singlePlayQueue, true));
76+
}),
7377

74-
START_HERE_ON_POPUP(R.string.start_here_on_popup, (fragment, item) ->
75-
fetchItemInfoIfSparse(fragment.requireContext(), item, singlePlayQueue ->
76-
NavigationHelper.playOnPopupPlayer(fragment.getContext(), singlePlayQueue, true))),
78+
START_HERE_ON_POPUP(R.string.start_here_on_popup, (fragment, item) -> {
79+
final Context ctx = fragment.requireContext().getApplicationContext();
80+
fetchItemInfoIfSparse(ctx, item, singlePlayQueue ->
81+
NavigationHelper.playOnPopupPlayer(ctx, singlePlayQueue, true));
82+
}),
7783

7884
SET_AS_PLAYLIST_THUMBNAIL(R.string.set_as_playlist_thumbnail, (fragment, item) -> {
7985
throw new UnsupportedOperationException("This needs to be implemented manually "

0 commit comments

Comments
 (0)