diff --git a/src/components/mention_link/mention_link.js b/src/components/mention_link/mention_link.js
index 8ad84a51..acd0f584 100644
--- a/src/components/mention_link/mention_link.js
+++ b/src/components/mention_link/mention_link.js
@@ -6,13 +6,20 @@ const MentionLink = {
   name: 'MentionLink',
   props: {
     url: {
-      required: true,
       type: String
     },
     content: {
       required: true,
       type: String
     },
+    userId: {
+      required: false,
+      type: String
+    },
+    userScreenName: {
+      required: false,
+      type: String
+    },
     firstMention: {
       required: false,
       type: Boolean,
@@ -21,29 +28,32 @@ const MentionLink = {
   },
   methods: {
     onClick () {
-      const link = generateProfileLink(this.user.id, this.user.screen_name)
+      const link = generateProfileLink(
+        this.userId || this.user.id,
+        this.userScreenName || this.user.screen_name
+      )
       this.$router.push(link)
     }
   },
   computed: {
     user () {
-      return this.$store.getters.findUserByUrl(this.url)
+      return this.url && this.$store.getters.findUserByUrl(this.url)
     },
     isYou () {
       // FIXME why user !== currentUser???
-      return this.user.screen_name === this.currentUser.screen_name
+      return this.user && this.user.screen_name === this.currentUser.screen_name
     },
     userName () {
-      return this.userNameFullUi.split('@')[0]
+      return this.user && this.userNameFullUi.split('@')[0]
     },
     userNameFull () {
-      return this.user.screen_name
+      return this.user && this.user.screen_name
     },
     userNameFullUi () {
-      return this.user.screen_name_ui
+      return this.user && this.user.screen_name_ui
     },
     highlight () {
-      return this.mergedConfig.highlight[this.user.screen_name]
+      return this.user && this.mergedConfig.highlight[this.user.screen_name]
     },
     highlightType () {
       return this.highlight && ('-' + this.highlight.type)
diff --git a/src/components/mentions_line/mentions_line.js b/src/components/mentions_line/mentions_line.js
index 6f347058..4b20d861 100644
--- a/src/components/mentions_line/mentions_line.js
+++ b/src/components/mentions_line/mentions_line.js
@@ -6,7 +6,7 @@ const MentionsLine = {
   props: {
     attentions: {
       required: true,
-      type: Object
+      type: Array
     }
   },
   data: () => ({ expanded: false }),
diff --git a/src/components/status/status.js b/src/components/status/status.js
index 3954df00..eb0af098 100644
--- a/src/components/status/status.js
+++ b/src/components/status/status.js
@@ -139,7 +139,10 @@ const Status = {
       return this.generateUserProfileLink(this.status.user.id, this.status.user.screen_name)
     },
     replyProfileLink () {
-      return this.$store.getters.findUser(this.status.in_reply_to_user_id).statusnet_profile_url
+      if (this.isReply) {
+        const user = this.$store.getters.findUser(this.status.in_reply_to_user_id)
+        return user && user.statusnet_profile_url
+      }
     },
     retweet () { return !!this.statusoid.retweeted_status },
     retweeterUser () { return this.statusoid.user },
diff --git a/src/components/status/status.vue b/src/components/status/status.vue
index 969e2bc8..d62c6817 100644
--- a/src/components/status/status.vue
+++ b/src/components/status/status.vue
@@ -262,6 +262,8 @@
                   class="mention-link"
                   :content="replyToName"
                   :url="replyProfileLink"
+                  :userId="status.in_reply_to_user_id"
+                  :userScreenName="status.in_reply_to_screen_name"
                   :first-mention="false"
                 />
                 <span