util.sasl, util.sasl_cyrus: Use method:mechanisms() in method:select(), instead of using the mechanisms list directly (fixes a traceback).
authorWaqas Hussain <waqas20@gmail.com>
Wed, 14 Jul 2010 20:21:51 +0500
changeset 3366 a2a242321901
parent 3365 32dc830d976c
child 3367 598c33a99a31
util.sasl, util.sasl_cyrus: Use method:mechanisms() in method:select(), instead of using the mechanisms list directly (fixes a traceback).
util/sasl.lua
util/sasl_cyrus.lua
--- a/util/sasl.lua	Wed Jul 14 20:10:35 2010 +0500
+++ b/util/sasl.lua	Wed Jul 14 20:21:51 2010 +0500
@@ -111,7 +111,7 @@
 		return false;
 	end
 	
-	self.mech_i = self.mechs[mechanism];
+	self.mech_i = mechanisms[self.mechanisms()[mechanism] and mechanism];
 	return (self.mech_i ~= nil);
 end
 
--- a/util/sasl_cyrus.lua	Wed Jul 14 20:10:35 2010 +0500
+++ b/util/sasl_cyrus.lua	Wed Jul 14 20:21:51 2010 +0500
@@ -144,8 +144,7 @@
 -- select a mechanism to use
 function method:select(mechanism)
 	self.mechanism = mechanism;
-	if not self.mechs then self:mechanisms(); end
-	return self.mechs[mechanism];
+	return self.mechanisms()[mechanism];
 end
 
 -- feed new messages to process into the library