Sylpheed 2.2.9 et carnet d’adresse JPilot

Correctif pour le port de FreeBSD

Ce patch est donné à titre d’information uniquement. Aucune garantie n’est donnée quant au résultat ainsi qu’à la conservation des données. Dans tous les cas n’oubliez pas de faire une sauvegarde de vos données.

* sous le répertoire du port de sylpheed2 lancer un make :


cd  /usr/ports/mail/sylpheed2
make

/usr/ports est le répertoire par défaut, à adapter si nécessaire.

* sous le répertoire de compilation ( par défaut /usr/ports/mail/sylpheed2/work/sylpheed-2.2.9/src ) modifier le fichier jpilot.c en appliquant le patch suivant :

texte - 1.2 ko

Vous pouvez télécharger le fichier pour faciliter l’application du correctif.



--- jpilot.c.orig       Tue Nov 14 21:53:52 2006
+++ jpilot.c    Tue Nov 14 22:07:13 2006
@@ -42,10 +42,12 @@
#  include <libpisock/pi-args.h>
#  include <libpisock/pi-appinfo.h>
#  include <libpisock/pi-address.h>
+#  include <libpisock/pi-version.h>
#else
#  include <pi-args.h>
#  include <pi-appinfo.h>
#  include <pi-address.h>
+#  include <pi-version.h>
#endif

#include "mgutils.h"
@@ -1009,10 +1011,22 @@ static void jpilot_load_address( JPilotF
       struct AddressAppInfo *ai;
       gchar **firstName = NULL;
       gchar **lastName = NULL;
+#if (PILOT_LINK_MAJOR > 11)
+       pi_buffer_t *RecordBuffer;
+#endif /* PILOT_LINK_0_12 */

       /* Retrieve address */
+#if (PILOT_LINK_MAJOR < 12)
       num = unpack_Address( & addr, buf->buf, buf->size );
       if( num > 0 ) {
+#else /* PILOT_LINK_0_12 */
+       RecordBuffer = pi_buffer_new(buf->size);
+       memcpy(RecordBuffer->data, buf->buf, buf->size);
+       RecordBuffer->used = buf->size;
+       num = unpack_Address( & addr, RecordBuffer, address_v1 );
+       pi_buffer_free(RecordBuffer);
+       if (num != -1) {
+#endif
               addrEnt = addr.entry;
               attrib = buf->attrib;
               unique_id = buf->unique_id;
supprimer le fichier indiquant que le port est compilé

rm /usr/ports/mail/sylpheed2/work/.build_done.sylpheed._usr_X11R6

( si vous n’avez pas changé le répertoire de compilation bien sûr ).

Revenez dans le répertoire du port de sylpheed2 et lancer un make pour recompiler jpilot et relinker sylpheed. Puis "make deinstall reinstall" devrait installer la version avec le correctif. "make clean" vous permettra de nettoyer le répertoire de compilation. Vérifiez après chaque commande qu’il n’y a pas d’erreur !


cd  /usr/ports/mail/sylpheed2
make
make deinstall reinstall
make clean

Ce patch a été créé par Corey Wright pour la version en dev d’après la correction faite par Colin Leroy pour Sylpheed-claws :

Patch de Corey Wright pour Sylpheed-2.3.0beta4

Patch de Colin Leroy pour Sylpheed-claws (CVS)