Index: widgets.py
===================================================================
--- widgets.py  (revisión: 5191)
+++ widgets.py  (copia de trabajo)
@@ -168,7 +168,7 @@
         for option_value, option_label in chain(self.choices, choices):
             option_value = smart_unicode(option_value)
             selected_html = (option_value == str_value) and u' selected="selected"' or ''
-            output.append(u'<option value="%s"%s>%s</option>' % (escape(option_value), selected_html, escape(smart_unicode(option_label))))
+            output.append(u'<option value="%s"%s>%s</option>' % (escape(option_value), selected_html, smart_unicode(escape(option_label))))
         output.append(u'</select>')
         return u'\n'.join(output)

@@ -205,7 +205,7 @@
         for option_value, option_label in chain(self.choices, choices):
             option_value = smart_unicode(option_value)
             selected_html = (option_value in str_values) and ' selected="selected"' or ''
-            output.append(u'<option value="%s"%s>%s</option>' % (escape(option_value), selected_html, escape(smart_unicode(option_label))))
+            output.append(u'<option value="%s"%s>%s</option>' % (escape(option_value), selected_html, smart_unicode(escape(option_label))))
         output.append(u'</select>')
         return u'\n'.join(output)

@@ -288,7 +288,7 @@
             cb = CheckboxInput(final_attrs, check_test=lambda value: value in str_values)
             option_value = smart_unicode(option_value)
             rendered_cb = cb.render(name, option_value)
-            output.append(u'<li><label>%s %s</label></li>' % (rendered_cb, escape(smart_unicode(option_label))))
+            output.append(u'<li><label>%s %s</label></li>' % (rendered_cb, smart_unicode(escape(option_label))))
         output.append(u'</ul>')
         return u'\n'.join(output)