@@ -153,7 +153,8 @@ def _update_label(self):
153
153
label_parts = [part for part in label_parts if part ]
154
154
widget_index = 0
155
155
if self ._locale :
156
- org_locale = locale .getlocale (locale .LC_TIME )
156
+ org_locale_time = locale .getlocale (locale .LC_TIME )
157
+ org_locale_ctype = locale .getlocale (locale .LC_CTYPE )
157
158
158
159
for part in label_parts :
159
160
part = part .strip ()
@@ -165,6 +166,7 @@ def _update_label(self):
165
166
try :
166
167
if self ._locale :
167
168
locale .setlocale (locale .LC_TIME ,self ._locale )
169
+ locale .setlocale (locale .LC_CTYPE ,self ._locale )
168
170
datetime_format_search = re .search ('\\ {(.*)}' ,part )
169
171
datetime_format_str = datetime_format_search .group ()
170
172
datetime_format = datetime_format_search .group (1 )
@@ -175,7 +177,8 @@ def _update_label(self):
175
177
active_widgets [widget_index ].setText (format_label_content )
176
178
widget_index += 1
177
179
if self ._locale :
178
- locale .setlocale (locale .LC_TIME ,org_locale )
180
+ locale .setlocale (locale .LC_TIME ,org_locale_time )
181
+ locale .setlocale (locale .LC_CTYPE ,org_locale_ctype )
179
182
180
183
def _next_timezone (self ):
181
184
self ._active_tz = next (self ._timezones )