infopipe work in progress
authorPhilip Kovacs <pkovacs@users.sourceforge.net>
Thu, 5 Jan 2006 07:18:27 +0000 (07:18 +0000)
committerPhilip Kovacs <pkovacs@users.sourceforge.net>
Thu, 5 Jan 2006 07:18:27 +0000 (07:18 +0000)
git-svn-id: https://conky.svn.sourceforge.net/svnroot/conky/trunk/conky@463 7f574dfc-610e-0410-a909-a81674777703

src/infopipe.c

index 34978b1..7e1b2ab 100644 (file)
@@ -35,6 +35,7 @@
 #include <string.h>
 #include "conky.h"
 
+/* access to this item array is synchronized with mutexes */
 static char g_item[14][256];
 
 /* ----------------------------------------
@@ -99,15 +100,14 @@ void *infopipe_service(void *pvoid)
             if (read(fd,buf,sizeof(buf))>0) {
                    
                pbuf=buf;
+               pthread_mutex_lock(&info.infopipe.item_mutex);
                for (i=0;i<14;i++) {
                     sscanf(pbuf,"%*[^:]: %[^\n]",g_item[i]);
                    while(*pbuf++ != '\n');
                }
-
-               pthread_mutex_lock(&info.infopipe.item_mutex);
-               memcpy(&info.infopipe.item,g_item,sizeof(g_item));
                pthread_mutex_unlock(&info.infopipe.item_mutex);
-                /*
+
+                /* -- debug to console --
                for(i=0;i<14;i++)
                    printf("%s\n",g_item[i]);
                 */