Re: [Evolution] Palm Tungsten T - Sync



Le mar 15/04/2003 à 16:21, JP Rosevear a écrit :
On Tue, 2003-04-15 at 07:45, Frederic Crozat wrote:
Le mar 15/04/2003 à 13:41, tom tk uni-linz ac at a écrit :
Hi,

I  am using Mandrake 9.1/Evolution 1.2.4/Gnome and I try to get the sync with my new Tungsten T 
Palm/PalmOS 5.0 running.

It works with the kpilot and jpilot sync (so I think pilot-link should work). But the gpilotd doesn't 
seem to colloborate with my Palm.

Has anyone experienced the same? Any help would be welcome :-)

Grab packages at http://people.mandrakesoft.com/~fcrozat/pilot/ they
should work with Tungsten T (official update is scheduled really soon..)

Can you send me the patch for this?

It was on my todo list :)) 

I've cc: gnome-pilot-list for archiving purpose..

This patch is based on a patch sent by Peter Dieth on gnome-pilot-list
in early January 2003.

I've also attached a patch for USB handling when people are using
devfs/devfsd (which is default on Mandrake system).. It is needed since
/dev/usb/tts/1 (or 0) is only created AFTER hotsync button is pressed..

Could you commit both patches to CVS ?

Thanks..

-- 
Frederic Crozat <fcrozat mandrakesoft com>
Mandrakesoft
--- gnome-pilot-0.1.71/gpilotd/gpilotd.c.orig   2003-04-02 11:58:10.000000000 +0200
+++ gnome-pilot-0.1.71/gpilotd/gpilotd.c        2003-04-02 12:02:10.000000000 +0200
@@ -845,6 +845,8 @@
        NULL
 };
 
+#define TUNGSTEN_STRING "P:  Vendor=0830 ProdID=0060"
+
 static gboolean product_net[] =
 {
        FALSE,
@@ -884,17 +886,27 @@
        f = fopen ("/proc/bus/usb/devices", "r");
        
        while (fgets (line, 255, f) != NULL && !visor_exists) {
-               if (line[0] != 'S')
+               if (line[0] != 'S' && line[0] != 'P')
                        continue;
-               
-               for (i = 0; product_names[i] != NULL; i++) {
-                       if (!strncmp (line + strlen ("S:  Product="), 
-                                     product_names[i], 
-                                     strlen (product_names[i]))) {
+
+               if (line[0] == 'P') { /* workaround for Tungsten T */
+                       if (!strncmp (line, TUNGSTEN_STRING, strlen(TUNGSTEN_STRING))) {
                                visor_exists = TRUE;
-                               visor_net = product_net[i];
+                               visor_net = TRUE;
                        }
                }
+               else {
+               
+                       for (i = 0; product_names[i] != NULL; i++) {
+                               if (!strncmp (line + strlen ("S:  Product="), 
+                                             product_names[i], 
+                                             strlen (product_names[i]))) {
+                                       visor_exists = TRUE;
+                                       visor_net = product_net[i];
+                               }
+                       }
+               }
+
        }
        
        fclose (f);
--- gnome-pilot-0.1.71/capplet/util.c.usb       2002-09-16 19:08:08.000000000 +0200
+++ gnome-pilot-0.1.71/capplet/util.c   2003-04-02 12:27:08.000000000 +0200
@@ -642,6 +642,7 @@
                        return ;
                }
        } else if (device->type == PILOT_DEVICE_USB_VISOR) {
+/* don't check anything, it could be no device if we are using devfs
                struct stat sb;
                        
                if (stat (device->port, &sb) != 0) {
@@ -660,7 +661,7 @@
                        error_dialog (str);
                        g_free (str);
                        return ;
-               }
+               }*/
        }
 
 }
--- gnome-pilot-0.1.71/gpilotd/gpilotd.c.usb    2002-12-12 14:53:21.000000000 +0100
+++ gnome-pilot-0.1.71/gpilotd/gpilotd.c        2003-04-02 12:27:46.000000000 +0200
@@ -858,6 +858,7 @@
 visor_devices_in (GIOChannel *io_channel,
                 GIOCondition condition,
                 GPilotContext *context) {
+       static firstime = TRUE;
        GPilotDevice *device;
        GList *l;
        int i;
@@ -874,6 +875,11 @@
        if (context->paused) 
                return FALSE;
 
+       if (!firstime)
+               sleep (4);
+       else
+               firstime = FALSE;
+
        /* Check /proc/bus/usb/devices for a usb device */
        f = fopen ("/proc/bus/usb/devices", "r");
        


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