From 228f6dc6be7d94703b10928b492a1396d2e7151e Mon Sep 17 00:00:00 2001
From: Yann Leboulanger <asterix@lagaule.org>
Date: Thu, 30 Jul 2009 18:06:52 +0200
Subject: [PATCH] catch a databased malformed exception to warn user. Fixes
 #5191

---
 src/session.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/session.py b/src/session.py
index 93fbf23759..6f5e0627cb 100644
--- a/src/session.py
+++ b/src/session.py
@@ -121,6 +121,12 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
 					msgtxt, tim=tim, subject=subject)
 			except exceptions.PysqliteOperationalError, e:
 				self.conn.dispatch('ERROR', (_('Disk WriteError'), str(e)))
+			except exceptions.DatabaseMalformed:
+				pritext = _('Database Error')
+				sectext = _('The database file (%s) cannot be read. Try to repair '
+					'it (see http://trac.gajim.org/wiki/DatabaseBackup) or remove '
+					'it (all history will be lost).') % common.logger.LOG_DB_PATH
+				self.conn.dispatch('ERROR', (pritext, sectext))
 
 		treat_as = gajim.config.get('treat_incoming_messages')
 		if treat_as:
-- 
GitLab