maitretarot-devel-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Maitretarot-devel-fr] test de libmaitretarot


From: Yves Mettier
Subject: Re: [Maitretarot-devel-fr] test de libmaitretarot
Date: Sun, 12 May 2002 21:01:45 +0200

On 12 May 2002 20:32:31 +0200
philippe brochard <address@hidden> wrote:

> Yves Mettier <address@hidden> writes:
> 
> > Coucou!
> > 
> > Je mets libmaitretarot a jour.
> > Attention: j'ai change le protocole de la fonction. Je sens que tu
> > vas pas aimer!!!
> 
> pourquoi ??? si c'est justifié, que ça apporte des choses ou que ça
> les simplifie, pourquoi pas.

Ca apporte la gestion des erreurs via GError.
Bref, c'est une gestion d'erreurs standard, qu'on peut utiliser partout.
On peut aussi l'ignorer: suffit de mettre NULL au lieu de &err (cf mon
exemple). on peut encore utiliser a la fois le code d'erreur, comme toi,
et le texte de l'erreur, tres facilement.

> 
> > Mais ma modification ne te force pas a te mettre a jour: ta fonction
> > et la mienne portent un nom different, et les constantes de l'enum
> > portent aussi des noms differents. Donc t'es pas oblige de mettre ca
> > en priorite haute.
> > 
> > En attendant, voici mes modifs.
> > Le prototype:
> > 
> > gint libmt_connect_to_socket (gchar * ip, guint16 port, GError **
> > error);
> > 
> ouarf, c'est plus compliqué :)
> 
> > Renvoie un entier positif ou nul comme avant si tout va bien.
> > Renvoie -1 sinon (et plus tes constantes. Niark)
> 
> qu'est ce qu'elles t'on fait mes constantes ?

Elles filent dans le GError!
Un numero de socket, c'est >=0, ou -1 en cas d'erreur ;-)
Apres, toi, tu nous avait fait un detournement de signification de
variable. T'as pas honte?

> 
> > Par contre, il y a un troisieme argument, GError **error, qui sert a
> > recuperer ton code d'erreur, et plus si affinites!
> 
> ok, tout rentre dans l'ordre, j'ai un retour de la fonction
> avec les != erreurs => parfait.

OK.

> 
> > Voici comment ca marche (inspire de la doc de glib):
> > 
> > GError *err = NULL;
> > 
> > sock = libmt_connect_to_socket ("127.0.0.1", 3551, &err);
> > g_assert ((sock == -1 && err != NULL) || (sock >= 0 && err ==
> > NULL)); if (err != NULL)
> >   {
> >     /* Report error to user, and free error */
> >     g_assert (sock == -1);
> >     fprintf (stderr, "Could not connect to server (%s)\n",
> > err->message);
> >     g_error_free (err);
> >   } 
> > else
> >   {
> >     /* Use file contents */
> >     g_assert (sock >= 0);
> >   }
> > 
> Ok

cool :-)

> 
> > 
> > 
> > Si ca c'est pas de la gestion d'erreur!!!
> > Et en plus, ca me semble simple. Vire tous les g_assert et les
> > commentaires: il ne reste plus que 5 lignes!
> > 
> ouais, c'est très bien, comme ça j'ai juste à gerer le retour de
> la fonction et les messages sont tout fait (err->message).
> 
> Ben, tu vois fallait pas stresser, ça me plait et c'est adopté :)

Coooooooooooooooooooooo :-)
Ooops, attention a l'extinction de voix, moi ;-)

> 
> > 
> > 
> > Un dernier mot sur libmaitretarot:
> > On va la tester un moment pour savoir si c'est OK. Avant que ce ne
> > soit OK, on se met d'accord pour faire des modifs et on les fait.
> > Apres, quand c'est OK, il faudra vraiment se mettre d'accord pour
> > faire la moindre modification dans libmaitretarot. Et quand c'est
> > OK, je considere qu'on pourra aussi l'installer dans /usr. C'est
> > pour ca qu'il faudra pas faire ce qu'on veut apres.
> > 
> 
> Oui, c'est une bonne evolution.
> Je commence à la tester tout de suite.
> 
> > En attendant, commentaires bienvenus ;-)
> > 
> 
> le retour arrive :)

Ahhhhhhhhhhhh..hhhhh.......hhhh
Pffff, j'arrete de simuler mon extinction de voix. Ca va devenir lourd a
force :)

> Sinon, tu as regarder la partie des encheres ? je n'arrive pas a voir
> se qui ne vas pas.

Cf l'autre courrier. J'ai fini de tout lire/repondre. Mais j'ai fait ca
non pas par ordre chronologique, mais du plus court/facile au plus
long/chiant/baleze. Sans oublier que j'avais aussi gtktalog a faire.
Maintenant, je peux m'attaquer aux gros gros trucs: la nouvelle branche
de maitretarot, une correction dans mon prochain article lmag, et faire
un test de gtktalog pour un gars qui croit que c'est pas parce que
gtktalog est libre qu'il peut avoir une qualite moindre qu'un logiciel
commercial, et qu'il croit aussi que je suis responsable de son bug (il
a pas lu l'en-tete des fichiers sources ;-).

Bref, je suis pas encore couche, et il est que 21h!

Yves

-- 
- Homepage - http://ymettier.free.fr                   -
- GPG key  - http://ymettier.free.fr/gpg.txt           -
- MyAM     - http://www.freesoftware.fsf.org/myam      -
- GTKtalog - http://www.freesoftware.fsf.org/gtktalog  -




reply via email to

[Prev in Thread] Current Thread [Next in Thread]