Communauté Eggdrop
[BUG] Probleme d'actualisation surment... - Version imprimable

+- Communauté Eggdrop (https://forum.eggdrop.fr)
+-- Forum : Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum : Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Sujet : [BUG] Probleme d'actualisation surment... (/showthread.php?tid=294)



[BUG] Probleme d'actualisation surment... - heretoc - 04/11/2008

Exposition du Probleme :
Quand n'importe quel utilisateurs change de pseudo via "/nick newpseudo" ou "!newnick" et parle juste après le robot plante , pareil si il change le mode d'un salon et parle juste après le robot plante avec l'erreure suivante :

Erreur tcl [evenement_serveur]: can't read "Chatteurs(heretoc@ident)": no such element in array

Voila le code ou je pense que sa foire bien (cela est mon premier tcl link au server soyez indulgents) :
Code :
        "NICK" {
            set pseudonyme [string tolower [string trim [lindex $raw_brute 0] :]];
            set changement_pseudonyme [string tolower [lindex $raw_brute 2]];

            if {![info exists Chatteurs($changement_pseudonyme@host)]} {
                if {![info exists Chatteurs($pseudonyme@host)]} {
                    set Chatteurs($changement_pseudonyme@ident) $Chatteurs($pseudonyme@ident);
                    set Chatteurs($changement_pseudonyme@host) $Chatteurs($pseudonyme@host);

                    unset Chatteurs($pseudonyme@ident);
                    unset Chatteurs($pseudonyme@host);
                } else {
                    set Chatteurs($changement_pseudonyme@ident) $Chatteurs($pseudonyme@ident);
                    set Chatteurs($changement_pseudonyme@host) $Chatteurs($pseudonyme@host);

                    unset Chatteurs($pseudonyme@ident);
                    unset Chatteurs($pseudonyme@host);
                }
            }

            unset pseudonyme;
            unset changement_pseudonyme;
        }

        "SETHOST" {
            set pseudonyme [string tolower [string trim [lindex $raw_brute 0] :]];
            if {[info exists Chatteurs($pseudonyme@host)]} {
                set Chatteurs($pseudonyme@host) [lindex $raw_brute 2];
            }
        }

        "CHGHOST" {
            set pseudonyme [string tolower [string trim [lindex $raw_brute 2] :]];
            if {[info exists Chatteurs($pseudonyme@host)]} {
                set Chatteurs($pseudonyme@host) [lindex $raw_brute 3];
            }
        }
    }
}

Merci de bien vouloir m'aider.


RE: [BUG] Probleme d'actualisation surment... - CrazyCat - 04/11/2008

A mon avis, il manque des $ devant certains de tes hosts et ident.
Ou bien un global Chatteurs


RE: [BUG] Probleme d'actualisation surment... - heretoc - 04/11/2008

On va voir si j'ai compris , merci


RE: [BUG] Probleme d'actualisation surment... - heretoc - 05/11/2008

Sans succés...


RE: [BUG] Probleme d'actualisation surment... - BdS - 05/11/2008

Montres nous les modifications que tu as fais suite au message de CC.


RE: [BUG] Probleme d'actualisation surment... - Merwin - 06/11/2008

Je pense, sans avoir regardé de plus pret, que le soucis viens de la casse.

tcl
set Chatteurs($changement_pseudonyme@ident) $Chatteurs($pseudonyme@ident);
set Chatteurs($changement_pseudonyme@host) $Chatteurs($pseudonyme@host);
unset Chatteurs($pseudonyme@ident);
unset Chatteurs($pseudonyme@host);



Quand tu fais ça, si l'ancien pseudo est "Merwin", et le nouveau "meRwin" , tu reçois bien une raw de changement de NICK, hors, pour ton Tcl, tu fais un [string tolower], donc en fais tu fais:

tcl
set Chatteurs(merwin@ident) $Chatteurs(merwin@ident)
set Chatteurs(merwin@host) $Chatteurs(merwin@host)
unset Chatteurs(merwin@ident)
unset Chatteurs(merwin@host)



T'as pas l'impression que t'efface la variable? A mon avis c'est pour ça qu'elle n'existe plus, ce bug arrive lors d'un changement de nick avec de la casse non? Smile

PS: Si le bug vient d'ailleurs, dans tout les cas ce bug t'arriveras un jour Wink


RE: [BUG] Probleme d'actualisation surment... - heretoc - 06/11/2008

Comme j'ai dit l'erreure arrive pas qu'avec un changement de nick mais aussi un changement de mode.. donc meme si se que tu dit savere exacte se qui est fort probable pourquoi elle bug aussi pour un changement de mode ?


RE: [BUG] Probleme d'actualisation surment... - Merwin - 06/11/2008

Si tu me montres pas le code du mode je peux pas te dire !