diff --git a/src/chat_control.py b/src/chat_control.py
index fdde777aacbe93b520207df17ac489374d650996..1c3ec68f4915e3352282ed1497f1fbb465dc25cf 100644
--- a/src/chat_control.py
+++ b/src/chat_control.py
@@ -1554,10 +1554,6 @@ class ChatControl(ChatControlBase):
 			ChatControlBase.print_conversation_line(self, msg,
 				'status', '', None)
 
-		gpg_pref = gajim.config.get_per('contacts', self.contact.jid,
-			'gpg_enabled')
-		if gpg_pref is None:
-			gajim.config.add_per('contacts', self.contact.jid)
 		gajim.config.set_per('contacts', self.contact.jid,
 			'gpg_enabled', self.gpg_is_active)
 
diff --git a/src/common/config.py b/src/common/config.py
index 695702afa410b5d28a39c07c7a66dfc43fe50e34..efb8387995796449621b828be04229dc293cf7d8 100644
--- a/src/common/config.py
+++ b/src/common/config.py
@@ -578,7 +578,7 @@ class Config:
 		dict = self.__options_per_key[optname][1]
 		if not dict.has_key(key):
 #			raise RuntimeError, '%s is not a key of %s' % (key, dict)
-			return
+			self.add_per(optname, key)
 		obj = dict[key]
 		if not obj.has_key(subname):
 #			raise RuntimeError, '%s is not a key of %s' % (subname, obj)