diff --git a/lib/gitlab/email/receiver.rb b/lib/gitlab/email/receiver.rb
index 3dd3bd0270702b81f0cddc8664186f3c83227c5a..5b55a045cbe9784a29fecdb2eb663344b6994251 100644
--- a/lib/gitlab/email/receiver.rb
+++ b/lib/gitlab/email/receiver.rb
@@ -76,16 +76,11 @@ module Gitlab
       end
 
       def validate_permission(author, project, permission)
-        if author
-          if author.blocked?
-            raise UserBlockedError
-          elsif project.nil? || !author.can?(permission, project)
-            # TODO: Give project not found error if author cannot read project
-            raise UserNotAuthorizedError
-          end
-        else
-          raise UserNotFoundError
-        end
+        raise UserNotFoundError unless author
+        raise UserBlockedError if author.blocked?
+        # TODO: Give project not found error if author cannot read project
+        raise UserNotAuthorizedError if project.nil? ||
+                                        !author.can?(permission, project)
       end
 
       # Find the first matched user in database from email From: section