[Freeipa-devel] [PATCH 4/4] fix bug 570392, command help traceback on Gettext

Rob Crittenden rcritten at redhat.com
Fri Mar 5 15:03:56 UTC 2010


John Dennis wrote:
> This fixes bz #570392
> 
> As a consequence of using doc=_('some message') the _()
> method was returning a Gettext instance, thus when optparse
> was handed the help text it received a Gettext instance instead
> of a basestring. optparse tried to operate on the Gettext instance
> as if it were a basestring and since it wasn't threw an exception.
> The fix is to promote (e.g. cast) the option.doc to unicode.
> If the option.doc was a str it becomes unicode, if it was unicode
> nothing happens, if it was Gettext (or any other object implementing
> the __unicode__() method) object is converted to unicode via the
> objects rules.
> 
> The patch appears to be trivial but figuring the exact general fix and 
> why wasn't :-)
> 
> By the way, while debugging this I discovered strings which were not
> localized, sometimes option.doc would be a str and sometimes a Gettext
> object. In a subsequent patch I'll fix all those unlocalized doc
> strings, but I don't want to bury this fix along with a load of
> string fixes.

ack, fixes it for me.

pushed to master




More information about the Freeipa-devel mailing list