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: philippe brochard
Subject: Re: [Maitretarot-devel-fr] test de libmaitretarot
Date: 12 May 2002 21:44:42 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Yves Mettier <address@hidden> writes:

> 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?
> 
ben non :) le code été assez simple :
  si la connection est ok -> connect_to_socket renvoie 0
  sinon elle renvoie un  code d'erreur qui correspond à ce qui
        a posé probleme (voir enum)

> > 
> > > 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 ;-)
> 
    I I
   /---\  tient voila du siros pour ta voix :)
   |   |
   `---'

> > 
> > > 
> > > 
> > > 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 ;-).
> 
En regle general, les logiciel libre sont de meilleur qualite que les
logiciels propriétaires parce qu'on n'a pas de délais a respecter. Enfin
on est aussi libre de faire un boulot dégueulasse, mais dans ce cas
c'est du darwinisme : le code le plus 'fort' reste, ce qui fait qu'a
force les logiciels libres s'ammeliore (comme le bon vin :))

> Bref, je suis pas encore couche, et il est que 21h!
> 
eh! eh! bon courage !

moi, j'ai un paquet de copie à corriger -> je my met :)


Philippe


-- 
,-------------------.         ,---------------,----------------------.
| Philippe Brochard |   ...   | address@hidden | http://hocwp.free.fr |
`------------------(_  (. .)  `---------------'----------------------'
-------------------ooO--(_)--Ooo--------------------------------------



reply via email to

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