diff --git a/addons/calendar/models/calendar.py b/addons/calendar/models/calendar.py
index 542db54d24939b80449c7e91578ed1b50f64426d..6661b155ce33138f5d0a1ad130b2e3d02e63ffcd 100644
--- a/addons/calendar/models/calendar.py
+++ b/addons/calendar/models/calendar.py
@@ -211,7 +211,8 @@ class Attendee(models.Model):
                                 'mimetype': 'text/calendar',
                                 'datas': base64.b64encode(ics_file)})
                     ]
-                    mail_ids.append(invitation_template.with_context(no_document=True).send_mail(attendee.id, email_values=email_values, notif_layout='mail.mail_notification_light'))
+                    # sudo is needed when the current user hasn't been added to the loop (i.e. neither in attendees, nor in owner)
+                    mail_ids.append(invitation_template.with_context(no_document=True).sudo().send_mail(attendee.id, email_values=email_values, notif_layout='mail.mail_notification_light'))
                 else:
                     mail_ids.append(invitation_template.send_mail(attendee.id, email_values=email_values, notif_layout='mail.mail_notification_light'))
 
diff --git a/addons/calendar/tests/test_calendar.py b/addons/calendar/tests/test_calendar.py
index 8dfc1d3484443a54243bc9702fa90cfc037a5615..ef1d9686b87404563cd7363e6532412acf04eddd 100644
--- a/addons/calendar/tests/test_calendar.py
+++ b/addons/calendar/tests/test_calendar.py
@@ -452,3 +452,31 @@ class TestCalendar(TransactionCase):
         # since the detach actually create an event in the backend
         # we check that no mail notifications are sent to the attendees
         _test_one_mail_per_attendee(self, m, partners)
+
+    def test_event_creation_mail_with_different_owner(self):
+        admin = self.env.ref('base.user_admin')
+        demo = self.env.ref('base.user_demo')
+        now = fields.Datetime.now()
+        partners = [
+           self.env['res.partner'].create({'name': 'testuser0', 'email': u'bob@example.com'}),
+           self.env['res.partner'].create({'name': 'testuser1', 'email': u'alice@example.com'}),
+           ]
+        partner_ids = [(6, False, [p.id for p in partners]), ]
+
+        m = self.CalendarEvent.with_user(admin).create({
+            'name': "mailTest1",
+            'partner_ids': partner_ids,
+            'allday': False,
+            'duration': 0.5,
+            'user_id': demo.id,
+            'start': fields.Datetime.to_string(now + timedelta(days=10)),
+            'stop': fields.Datetime.to_string(now + timedelta(days=15)),
+            })
+
+        for partner in partners:
+            mail = self.env['mail.mail'].search([
+                ('recipient_ids', 'in', partner.id),
+                ('subject', 'like', m.name),
+                ])
+            self.assertEqual(len(mail), 1)
+            self.assertEqual(mail.author_id.id, demo.partner_id.id)