perte de contenu d'un script

Ceux qui souhaitent signaler des erreurs éventuelles du logiciel sont les bienvenus ici (soyez précis svp !).
Post Reply
geopierre
Posts: 15
Joined: Mon Nov 22, 2010 11:39 am
Location: Lycée région parisienne

perte de contenu d'un script

Post by geopierre » Mon Dec 27, 2010 10:59 am

Bonjour,
Je crée une figure. J'ajoute deux scripts, j'enregistre.
Par exemple la figure est vide, le premier script s'appelle scr1 de contenu scr1=0 et le second scr2 de contenu scr2=0.
En utilisant l'icône de script je commande "Modifier le script" scr1.
Sans rien modifier, sans fermer la fenêtre "Script inclus dans la figure : scr1" je réutilise la l'icône de script et je commande "Modifier le script" scr2.
Sans rien modifier, sans fermer la fenêtre "Script inclus dans la figure : scr2" je réutilise la l'icône de script et je commande "Modifier le script" scr1.

Le contenu du script scr2 a été recopié sur scr1. Si je quitte sans enregistrer je retrouve à l'ouverture le contenu initial de scr1, mais si j'enregistre, le contenu initial de scr1 est perdu.

Ce problème semble reproductible, il ne dépend pas de l'ordre des scripts, ni de leur nom, ni de leur contenu. D'autres problèmes sans doute analogues peuvent apparaître avec un seul script, mais sont plus difficilement reproductibles.

A essayer et à confirmer ou infirmer, évidemment dans d'autres configurations.

OS X.10.6.4 Java 1.6.0_22 CarMetal 3.5.2
Pierre

Hesperion
Posts: 260
Joined: Sun Nov 11, 2007 2:14 pm
Location: Blois

Post by Hesperion » Mon Dec 27, 2010 10:31 pm

Pour faire plus simple, il suffit d'ouvrir un 2nd script alors qu'un 1er est déjà ouvert pour que le contenu du 1er soit remplacé par celui du 2nd.

Et je confirme ce bug chez moi aussi.

User avatar
yves974
Posts: 268
Joined: Tue Oct 30, 2007 3:11 am
Location: Réunion

Post by yves974 » Wed Dec 29, 2010 6:38 pm

Le bug est effectivement repéré depuis "longtemps". Il y a quelques mois Eric avait écrit à ce sujet (correspondance interne mais bon, au moins ça montre que ça cogite parfois ;-) :

Yves - Bug sur les scripts long : si je m'ennuie sur un script long et que je clique sur une autre figure - onglet - pour faire autre chose pendant que le script s'execute (je sais c'est IDIOT mais je l'ai quand même fait), non seulement ça bloque le script mais ça fige CaRMetal. Si on pouvait l'éviter ça serait bien ....

Eric : je me permets de glisser mon charabias en guise de mémo. L'idée générale de ce qui suit c'est qu'il me faut reprogrammer autrement le moteur d'interprétation des scripts pour que ce bug, et d'autres, disparaissent. Je le ferais pour une version >=3.6.
Les méthodes propres aux CaRScripts doivent être static. J'ai compris ça très vite en incorporant le Rhino de mozilla, et je suis parti dans cette logique en faisant en sorte que tout soit static, y compris les tâches à lancer. Cela provoque donc des collisions entre les executions de scripts. Je viens de trouver le moyen de faire en sorte que les taches soient des objets propres à chaque figure et indépendantes à l'intérieur de chaque figure. Les threads seront des objets de la classe JSRun qui elle même sera un objet de chaque ZirkelCanvas. L'exemple des animations doit me servir de modèle : c'est à la mode "animation" que les scripts doivent se comporter.

C'est clair que, même si ce n'est pas encore fait, Eric sait exactement ce qu'il se passe sur cette question de 2 scripts ...

Post Reply