qarte 4.6.0 crashes using filter

Bug #1793879 reported by Frederic
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Qarte
New
Undecided
Unassigned

Bug Description

Juste après l'affichage de toutes les vidéos disponibles, je filtre avec le mot "Demain" ce qui crash l'application.
Right after all the vids are shown, I use the filter. This crashes qarte.
Voici le journal
Here are the log
starting : qarte -d
13:50:00: INFO - qarte Qarte-4.6.0
13:50:00: INFO - qarte Python 3.4.3 on Linux-4.4.0-133-generic-x86_64-with-LinuxMint-17.3-rosa
13:50:00: INFO - qarte File system encoding: iso8859-1
13:50:00: INFO - qarte System encoding: utf-8
13:50:00: INFO - qarte Locale encoding: ('fr_CH', 'ISO8859-1')
.... (all log in the file enclosed)
13:50:51: INFO - arteconcert Concert list updated
Traceback (most recent call last):
  File "/usr/share/qarte/core.py", line 228, in set_videos_list
    self.artelive.config_parser()
  File "/usr/share/qarte/arteconcert.py", line 84, in config_parser
    self.update_concerts()
  File "/usr/share/qarte/arteconcert.py", line 103, in update_concerts
    outf.write(cnt)
UnicodeEncodeError: 'latin-1' codec can't encode character '\u2019' in position 2712: ordinal not in range(256)
terminate called after throwing an instance of 'std::bad_alloc'
  what(): std::bad_alloc
Aborted

Quelques informations supplémentaires:
Il me semble que cela fonctionnait avec la version précédente.
Par ailleurs, mon système n'est pas d'une stabilité à toute épreuve concernant la gestion des noms avec accent, je dois avoir un problème de configuration de l'encodage.

Tags: 4.6.0 filter
Revision history for this message
Frederic (frr.ubuntu) wrote :
Revision history for this message
VinsS (vincent-vandevyvre) wrote :

Salut,

Ça n’a rien a voir avec le filtre, il s’agit de arte Concert.
Le programme télécharge la liste des concerts et l’écrit dans un fichier.

Toutefois l’erreur est irrationnelle, le caractère '\u2019' à la position 2712 est simplement une apostrophe or le texte comporte déjà beaucoup de caractères accentués avant celui-là.

De plus qarte ne devrait pas crasher pour cette raison, le programme reste utilisable malgrè ce type d'erreur.

Dans le pire des cas vous pouver appliquer le patch join.
Il faut utiliser cette commande avec les droits admin

$ sudo patch /usr/share/qarte/arteconcert.py artepatch

Revision history for this message
Emm88 (emm88) wrote :

Je peux répliquer sans même faire une recherche filtre
Je ne suis pas un pro des ''locales''

$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB

locale -a | egrep 'fr_CH|iso8859'
en_GB.iso885915
en_US.iso885915
fr_CH
fr_CH.utf8

Je rajoute les locales CH
# cat /etc/locale.gen | grep fr_CH
 fr_CH ISO-8859-1
 fr_CH.UTF-8 UTF-8

$ sudo locale-gen fr_CH.ISO-8859-1
Generating locales (this might take a while)...
  en_GB.UTF-8... done
  fr_CH.ISO-8859-1... done
  fr_CH.UTF-8... done
  fr_FR.UTF-8... done
Generation complete.
$ locale -a | egrep 'fr_CH|iso8859'
en_GB.iso885915
en_US.iso885915
fr_CH
fr_CH.iso88591
fr_CH.utf8

$ echo $LANG
en_GB.UTF-8
$ LANG=fr_CH.iso-8859-15
$ echo $LANG
fr_CH.iso-8859-15
$ qarte -d
19:49:39: INFO - qarte Qarte-4.6.0
19:49:39: INFO - qarte Python 3.5.3 on Linux-4.17
19:49:39: INFO - qarte File system encoding: ascii
19:49:39: INFO - qarte System encoding: utf-8
19:49:39: INFO - qarte Locale encoding: ('fr_CH', 'ISO8859-15')
19:49:39: INFO - core Set workspace

19:49:39: INFO - artetv Can't load summaries: 'ascii' codec can't decode byte 0xc3 in position 107: ordinal not in range(128)
19:49:39: INFO - artetv Fetch page: https://www.arte.tv/fr/guide/20180918/
19:49:41: INFO - arteconcert Get update ...
19:49:41: INFO - arteconcert Concert list updated
Traceback (most recent call last):
  File "/usr/share/qarte/core.py", line 228, in set_videos_list
    self.artelive.config_parser()
  File "/usr/share/qarte/arteconcert.py", line 84, in config_parser
    self.update_concerts()
  File "/usr/share/qarte/arteconcert.py", line 103, in update_concerts
    outf.write(cnt)
UnicodeEncodeError: 'ascii' codec can't encode character '\xe8' in position 20: ordinal not in range(128)
Aborted

Puis fermer terminal. Nouveau terminal.
$ echo $LANG
en_GB.UTF-8
$ qarte -d
pas de crash

Revision history for this message
Emm88 (emm88) wrote :

Les histoires de locales
il y a aussi
https://bugs.launchpad.net/qarte/+bug/1666829

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.