diff options
author | Michael Stahl <mstahl@redhat.com> | 2013-01-14 12:37:29 +0100 |
---|---|---|
committer | Noel Power <noel.power@suse.com> | 2013-01-14 18:54:41 +0000 |
commit | e523186e59632ef824eb3262edd0c63e388af6e8 (patch) | |
tree | 966fa9fabfbc0047be58856f1eb4faa7ed93b0b2 /scripting | |
parent | f39fa5aad48dc93bf24a328297635e5e46a65cff (diff) |
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
(cherry picked from commit 1a5b3d8e4d88aa27647cc7b99623dd6f6e706bbc)
Reviewed-on: https://gerrit.libreoffice.org/1669
Reviewed-by: Noel Power <noel.power@suse.com>
Tested-by: Noel Power <noel.power@suse.com>
Diffstat (limited to 'scripting')
-rwxr-xr-x | scripting/source/pyprov/mailmerge.py | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/scripting/source/pyprov/mailmerge.py b/scripting/source/pyprov/mailmerge.py index d76322e14aa9..c606143110e1 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) |