Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        E.h file.c menus-misc.c 


Log Message:
Workaround for image cache stuff on NFS mounts for linux (Jan Nordholz).
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.355
retrieving revision 1.356
diff -u -3 -r1.355 -r1.356
--- E.h 31 Jan 2005 22:58:12 -0000      1.355
+++ E.h 1 Feb 2005 21:37:50 -0000       1.356
@@ -1701,6 +1701,7 @@
 time_t              moddate(const char *s);
 int                 filesize(const char *s);
 int                 fileinode(const char *s);
+int                 filedev_map(int dev);
 int                 filedev(const char *s);
 void                E_cd(const char *s);
 char               *cwd(void);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/file.c,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -3 -r1.64 -r1.65
--- file.c      25 Jan 2005 21:57:14 -0000      1.64
+++ file.c      1 Feb 2005 21:38:21 -0000       1.65
@@ -288,6 +288,29 @@
 }
 
 int
+filedev_map(int dev)
+{
+#ifdef __linux__
+   /* device numbers in the anonymous range can't be relied
+    * upon, so map them all on a single one */
+   switch (dev >> 8)
+     {
+     default:
+       return dev;
+       break;
+     case 0:
+     case 144:
+     case 145:
+     case 146:
+       return 1;
+       break;
+     }
+#else
+   return dev;
+#endif
+}
+
+int
 filedev(const char *s)
 {
    struct stat         st;
@@ -296,7 +319,7 @@
       return 0;
    if (stat(s, &st) < 0)
       return 0;
-   return (int)st.st_dev;
+   return filedev_map((int)st.st_dev);
 }
 
 void
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/menus-misc.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- menus-misc.c        25 Jan 2005 21:57:39 -0000      1.5
+++ menus-misc.c        1 Feb 2005 21:38:35 -0000       1.6
@@ -68,7 +68,7 @@
        int                 aa, bb, cc;
 
        aa = (int)st.st_ino;
-       bb = (int)st.st_dev;
+       bb = filedev_map((int)st.st_dev);
        cc = 0;
        if (st.st_mtime > st.st_ctime)
           cc = st.st_mtime;
@@ -189,7 +189,7 @@
             int                 aa, bb, cc;
 
             aa = (int)st.st_ino;
-            bb = (int)st.st_dev;
+            bb = filedev_map((int)st.st_dev);
             cc = 0;
             if (st.st_mtime > st.st_ctime)
                cc = st.st_mtime;




-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to