diff --git a/src/service/rooms/state_accessor/mod.rs b/src/service/rooms/state_accessor/mod.rs
index 84fc3a28019542a33ec82ee158348827fe70934a..1ada031e5c514514ac723e9faf218fcfbc95864f 100644
--- a/src/service/rooms/state_accessor/mod.rs
+++ b/src/service/rooms/state_accessor/mod.rs
@@ -230,10 +230,9 @@ pub fn room_state_get(
 
 	pub fn get_name(&self, room_id: &RoomId) -> Result<Option<String>> {
 		services().rooms.state_accessor.room_state_get(room_id, &StateEventType::RoomName, "")?.map_or(Ok(None), |s| {
-			serde_json::from_str(s.content.get()).map(|c: RoomNameEventContent| Some(c.name)).map_err(|e| {
-				error!("Invalid room name event in database for room {}. {}", room_id, e);
-				Error::bad_database("Invalid room name event in database.")
-			})
+			Ok(serde_json::from_str(s.content.get())
+				.map(|c: RoomNameEventContent| Some(c.name))
+				.unwrap_or_else(|_| None))
 		})
 	}