diff --git a/core/modules/node/src/NodeForm.php b/core/modules/node/src/NodeForm.php
index ab81a4e3f928452dc48299839c7682785b4311fd..2ba26cab1bf529a21e90f06bfb92af6b62c7c658 100644
--- a/core/modules/node/src/NodeForm.php
+++ b/core/modules/node/src/NodeForm.php
@@ -139,6 +139,11 @@ public function form(array $form, FormStateInterface $form_state) {
 
     $form['advanced']['#attributes']['class'][] = 'entity-meta';
 
+    // Set default author.
+    $meta_author = \Drupal::currentUser()->getAccountName();
+    if (!$node->isNew() && $node->getOwner() != NULL) {
+      $meta_author = $node->getOwner()->getAccountName();
+    }
     $form['meta'] = [
       '#type' => 'details',
       '#group' => 'advanced',
@@ -163,7 +168,7 @@ public function form(array $form, FormStateInterface $form_state) {
     $form['meta']['author'] = [
       '#type' => 'item',
       '#title' => $this->t('Author'),
-      '#markup' => $node->getOwner()->getAccountName(),
+      '#markup' => $meta_author,
       '#wrapper_attributes' => ['class' => ['entity-meta__author']],
     ];