Enlightenment CVS committal

Author  : doursse
Project : e17
Module  : libs/edje

Dir     : e17/libs/edje/src/bin


Modified Files:
        edje_cc_out.c edje_cc_sources.c 


Log Message:
update win32 port : use correct temp dir value and correct open function 
according to the compiler

===================================================================
RCS file: /cvs/e/e17/libs/edje/src/bin/edje_cc_out.c,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -3 -r1.58 -r1.59
--- edje_cc_out.c       15 Sep 2007 08:46:34 -0000      1.58
+++ edje_cc_out.c       25 Nov 2007 16:22:58 -0000      1.59
@@ -3,7 +3,8 @@
  */
 
 #ifdef _WIN32
-# include <windows.h>
+# include <share.h>
+# include <sys/stat.h>
 #endif /* _WIN32 */
 
 
@@ -590,24 +591,32 @@
        cd = l->data;
        if ((cd->shared) || (cd->programs))
          {
+            char tmpn[4096];
             int fd;
 #ifdef _WIN32
-            int ret;
-            char path[4096];
+            char *tmpdir;
 #endif /* _WIN32 */
-            char tmpn[4096];
 
 #ifdef _WIN32
-            ret = GetTempPath(_MAX_PATH, path);
-            if ((ret > _MAX_PATH) || (ret == 0))
-               fd = -1;
-             else
+            tmpdir = getenv("TMP");
+            if (!tmpdir) tmpdir = getenv("TEMP");
+            if (!tmpdir) tmpdir = getenv("USERPROFILE");
+            if (!tmpdir) tmpdir = getenv("WINDIR");
+            if (tmpdir)
                {
-                  if (!GetTempFileName(path, "edj", 0, tmpn))
-                    fd = -1;
+                  snprintf(tmpn, _MAX_PATH, "%s/edje_cc.sma-tmp-XXXXXX", 
tmpdir);
+# ifdef __MINGW32__
+                  if (_mktemp(tmpn))
+                    fd = _sopen(tmpn, _O_RDWR | _O_BINARY | _O_CREAT, 
_SH_DENYNO, _S_IREAD | _S_IWRITE);
+# else
+                  if (!_mktemp_s(tmpn, _MAX_PATH))
+                    _sopen_s(&fd, tmpn, _O_RDWR | _O_BINARY | _O_CREAT, 
_SH_DENYNO, _S_IREAD | _S_IWRITE);
+# endif /* __MINGW32__ */
                   else
-                    fd = open(tmpn, _O_RDWR | _O_BINARY | _O_CREAT, 0444);
+                    fd = -1;
                }
+             else
+               fd= -1;
 #else
             strcpy(tmpn, "/tmp/edje_cc.sma-tmp-XXXXXX");
             fd = mkstemp(tmpn);
@@ -693,16 +702,25 @@
                    }
                  close(fd);
 #ifdef _WIN32
-                  ret = GetTempPath(_MAX_PATH, path);
-                  if ((ret > _MAX_PATH) || (ret == 0))
-                    fd = -1;
-                  else
+                  tmpdir = getenv("TMP");
+                  if (!tmpdir) tmpdir = getenv("TEMP");
+                  if (!tmpdir) tmpdir = getenv("USERPROFILE");
+                  if (!tmpdir) tmpdir = getenv("WINDIR");
+                  if (tmpdir)
                     {
-                       if (!GetTempFileName(path, "edj", 0, tmpo))
-                         fd = -1;
+                       snprintf(tmpo, _MAX_PATH, "%s/edje_cc.amx-tmp-XXXXXX", 
tmpdir);
+# ifdef __MINGW32__
+                       if (_mktemp(tmpo))
+                         fd = _sopen(tmpo, _O_RDWR | _O_BINARY | _O_CREAT, 
_SH_DENYNO, _S_IREAD | _S_IWRITE);
+# else
+                       if (!_mktemp_s(tmpo, _MAX_PATH))
+                         _sopen_s(&fd, tmpo, _O_RDWR | _O_BINARY | _O_CREAT, 
_SH_DENYNO, _S_IREAD | _S_IWRITE);
+# endif /* __MINGW32__ */
                        else
-                         fd = open(tmpo, _O_RDWR | _O_BINARY | _O_CREAT, 0444);
+                         fd = -1;
                     }
+                  else
+                    fd= -1;
 #else
                  strcpy(tmpo, "/tmp/edje_cc.amx-tmp-XXXXXX");
                  fd = mkstemp(tmpo);
===================================================================
RCS file: /cvs/e/e17/libs/edje/src/bin/edje_cc_sources.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -3 -r1.16 -r1.17
--- edje_cc_sources.c   17 Jun 2007 06:51:42 -0000      1.16
+++ edje_cc_sources.c   25 Nov 2007 16:22:58 -0000      1.17
@@ -163,10 +163,10 @@
                                      *slash = '\0';
                                      dir_len = strlen(dir);
                                   }
-                                
+
                                 l = pp - p + dir_len + 1;
                                 file = mem_alloc(l);
-                                
+
                                 if (!dir_len)
                                   snprintf(file, l - 1, "%s", p + 1);
                                 else
@@ -174,7 +174,7 @@
 
                                 fname = strdup(p + 1);
                                 pp = strrchr(fname, end);
-                                if (pp) *pp = 0;
+                                if (pp) *pp = '\0';
                                 forgetit = 1;
                              }
                         }



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to