diff --git a/scipost_django/preprints/views.py b/scipost_django/preprints/views.py
index fafc358b3bf3b8444ec66b2336b3f11542b708e8..7055d1ac548ef7bdc77f3c6332f5b7e502927d06 100644
--- a/scipost_django/preprints/views.py
+++ b/scipost_django/preprints/views.py
@@ -17,7 +17,9 @@ def preprint_pdf_wo_vn_nr(request, identifier_wo_vn_nr):
     """
     submissions = get_list_or_404(
         Submission, preprint__identifier_w_vn_nr__startswith=identifier_wo_vn_nr)
-    latest = submissions[0].get_latest_version()
+    latest = submissions[0].get_latest_public_version()
+    if not latest:
+        raise Http404
     return redirect(reverse(
         'preprints:pdf',
         kwargs={ 'identifier_w_vn_nr': latest.preprint.identifier_w_vn_nr }))
diff --git a/scipost_django/submissions/models/submission.py b/scipost_django/submissions/models/submission.py
index d1017b69c6c69d79e98c2cc91870a9b9c1a35d1c..1c1fd659f9d2154a327ed6f7f0de4f41b6b6351d 100644
--- a/scipost_django/submissions/models/submission.py
+++ b/scipost_django/submissions/models/submission.py
@@ -364,7 +364,11 @@ class Submission(models.Model):
         return Submission.objects.filter(thread_hash=self.thread_hash).exclude(pk=self.id)
 
     def get_latest_version(self):
-        """Return the latest known version in the thread of this Submission."""
+        """Return the latest version in the thread of this Submission."""
+        return self.thread_full.first()
+
+    def get_latest_public_version(self):
+        """Return the latest publicly-visible version in the thread of this Submission."""
         return self.thread.first()
 
     def _add_event(self, sort, message):
diff --git a/scipost_django/submissions/views.py b/scipost_django/submissions/views.py
index 56e692c70e6c83ee14bd9dcdd6d654dc074c7441..cb61a2649ada965cdcb8bf7bad96e24eff80b1c9 100644
--- a/scipost_django/submissions/views.py
+++ b/scipost_django/submissions/views.py
@@ -492,8 +492,8 @@ def submission_detail_wo_vn_nr(request, identifier_wo_vn_nr):
     """Redirect to the latest Submission's detail page."""
     submissions = get_list_or_404(
         Submission, preprint__identifier_w_vn_nr__startswith=identifier_wo_vn_nr)
-    latest = submissions[0].get_latest_version()
-    if not latest: # this can happen if there exists no public version in this thread
+    latest = submissions[0].get_latest_public_version()
+    if not latest:
         raise Http404
     return redirect(reverse('submissions:submission',
                             kwargs={ 'identifier_w_vn_nr': latest.preprint.identifier_w_vn_nr }))