[Libreoffice-commits] .: 2 commits - scripting/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Mon Jan 14 03:43:32 PST 2013


 scripting/source/pyprov/mailmerge.py |   33 +++++++++++++++++++++------------
 1 file changed, 21 insertions(+), 12 deletions(-)

New commits:
commit 1a5b3d8e4d88aa27647cc7b99623dd6f6e706bbc
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Jan 14 12:37:29 2013 +0100

    fdo#59249: mailmerge.py: adapt to changes in smtplib:
    
    Apparently the login() method in Python 3.3 expects str arguments for
    user and password, since it calls encode on them, but for Python 2.6 the
    "encode" calls were explicitly added in the caller since login() does
    not encode itself; add an ugly version check for that.
    
    Change-Id: Iebfce44073a837e9cb845855ba448d5b6a2ebd11

diff --git a/scripting/source/pyprov/mailmerge.py b/scripting/source/pyprov/mailmerge.py
index 9dce4d3..b550c30 100755
--- a/scripting/source/pyprov/mailmerge.py
+++ b/scripting/source/pyprov/mailmerge.py
@@ -99,9 +99,12 @@ class PyMailSMTPService(unohelper.Base, XSmtpService):
 			self.server.starttls()
 			self.server.ehlo()
 
-		user = xAuthenticator.getUserName().encode('ascii')
-		password = xAuthenticator.getPassword().encode('ascii')
-		if user != b'':
+		user = xAuthenticator.getUserName()
+		password = xAuthenticator.getPassword()
+		if user != '':
+			if sys.version < '3': # fdo#59249 i#105669 Python 2 needs "ascii"
+				user = user.encode('ascii')
+				password = password.encode('ascii')
 			if dbg:
 				print("Logging in, username of", user, file=dbgout)
 			self.server.login(user, password)
@@ -279,9 +282,12 @@ class PyMailIMAPService(unohelper.Base, XMailService):
 			self.server = imaplib.IMAP4(server, port)
 		print("AFTER", file=dbgout)
 			
-		user = xAuthenticator.getUserName().encode('ascii')
-		password = xAuthenticator.getPassword().encode('ascii')
-		if user != b'':
+		user = xAuthenticator.getUserName()
+		password = xAuthenticator.getPassword()
+		if user != '':
+			if sys.version < '3': # fdo#59249 i#105669 Python 2 needs "ascii"
+				user = user.encode('ascii')
+				password = password.encode('ascii')
 			if dbg:
 				print("Logging in, username of" + user, file=dbgout)
 			self.server.login(user, password)
@@ -348,8 +354,11 @@ class PyMailPOP3Service(unohelper.Base, XMailService):
 			self.server = poplib.POP3(server, port)
 		print("AFTER", file=dbgout)
 			
-		user = xAuthenticator.getUserName().encode('ascii')
-		password = xAuthenticator.getPassword().encode('ascii')
+		user = xAuthenticator.getUserName()
+		password = xAuthenticator.getPassword()
+		if sys.version < '3': # fdo#59249 i#105669 Python 2 needs "ascii"
+			user = user.encode('ascii')
+			password = password.encode('ascii')
 		if dbg:
 			print("Logging in, username of" + user, file=dbgout)
 		self.server.user(user)
commit b08dc0b7777f48cef97e90ae1f4633591add680b
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Jan 14 12:22:31 2013 +0100

    Revert "fdo#59249: mailmerge.py: some more bytes vs. str mangling"
    
    This reverts commit 9dec0c79011a0c09068d86fba9387c67da84a39b.
    
    Was nonsense because login method actually expects "str" arguments.

diff --git a/scripting/source/pyprov/mailmerge.py b/scripting/source/pyprov/mailmerge.py
index cfbe761..9dce4d3 100755
--- a/scripting/source/pyprov/mailmerge.py
+++ b/scripting/source/pyprov/mailmerge.py
@@ -103,7 +103,7 @@ class PyMailSMTPService(unohelper.Base, XSmtpService):
 		password = xAuthenticator.getPassword().encode('ascii')
 		if user != b'':
 			if dbg:
-				print("Logging in, username of" + user.decode('ascii'), file=dbgout)
+				print("Logging in, username of", user, file=dbgout)
 			self.server.login(user, password)
 
 		for listener in self.listeners:
@@ -137,7 +137,7 @@ class PyMailSMTPService(unohelper.Base, XSmtpService):
 		bccrecipients = xMailMessage.getBccRecipients()
 		if dbg:
 			print("PyMailSMTPService subject " + subject, file=dbgout)
-			print("PyMailSMTPService from " + sendername, file=dbgout)
+			print("PyMailSMTPService from " + sendername.encode('utf-8'), file=dbgout)
 			print("PyMailSMTPService from " + sendermail, file=dbgout)
 			print("PyMailSMTPService send to " + recipients, file=dbgout)
 
@@ -283,7 +283,7 @@ class PyMailIMAPService(unohelper.Base, XMailService):
 		password = xAuthenticator.getPassword().encode('ascii')
 		if user != b'':
 			if dbg:
-				print("Logging in, username of" + user.decode('ascii'), file=dbgout)
+				print("Logging in, username of" + user, file=dbgout)
 			self.server.login(user, password)
 
 		for listener in self.listeners:
@@ -351,7 +351,7 @@ class PyMailPOP3Service(unohelper.Base, XMailService):
 		user = xAuthenticator.getUserName().encode('ascii')
 		password = xAuthenticator.getPassword().encode('ascii')
 		if dbg:
-			print("Logging in, username of" + user.decode('ascii'), file=dbgout)
+			print("Logging in, username of" + user, file=dbgout)
 		self.server.user(user)
 		self.server.pass_(user, password)
 


More information about the Libreoffice-commits mailing list