Control: tags -1 + pending

Hi,

2017-04-09 06:13 Axel Beckert:
Package: aptitude
Version: 0.8.6-1
Severity: normal

Hi,

I just ran into a corner case which causes a crash of aptitude:

→ env LANG=foobar aptitude changelog aptitude
terminate called after throwing an instance of 'std::runtime_error'
 what():  locale::facet::_S_create_c_locale name not valid
[1]    10697 abort (core dumped)  env LANG=foobar aptitude changelog aptitude

The crash can be triggered with both, trying to download a changelog
from within the TUI (by pressing "C") or from the commandline as shown
above.

This happens due to the internal implementation of Boost, when creating
a temporary dir to save the changelog.

When the locale is invalid we default to the C locale, but it seems that
Boost again tries to use the invalid locale for some reason.


I added some code to warn about the locale being invalid in such cases,
but there's only so much that we can do in these situations, since it's
not even possible to get clues from glibc about which locales might be
wrong to point the users in the right direction (it seems that it's an
area which is heavily implementation-dependent and other libc-s follow
different conventions).

So essentially the message is a bit clearer than
"locale::facet::_S_create_c_locale name not valid", but that's about it.


Cheers.
--
Manuel A. Fernandez Montecelo <[email protected]>

_______________________________________________
Aptitude-devel mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/aptitude-devel

Reply via email to