Enlightenment CVS committal Author : doursse Project : e17 Module : libs/edje
Dir : e17/libs/edje/src/bin Modified Files: edje_cc.h edje_cc_handlers.c edje_cc_out.c edje_cc_parse.c edje_decc.c Log Message: open files in binary mode, to fix problems on Windows. Fix a constness =================================================================== RCS file: /cvs/e/e17/libs/edje/src/bin/edje_cc.h,v retrieving revision 1.31 retrieving revision 1.32 diff -u -3 -r1.31 -r1.32 --- edje_cc.h 1 Apr 2008 21:28:28 -0000 1.31 +++ edje_cc.h 28 Jun 2008 09:11:48 -0000 1.32 @@ -3,6 +3,15 @@ #include "edje_main.h" +/* + * On Windows, if the file is not opened in binary mode, + * read does not return the correct size, because of + * CR / LF translation. + */ +#ifndef O_BINARY +# define O_BINARY 0 +#endif + /* types */ typedef struct _New_Object_Handler New_Object_Handler; typedef struct _New_Statement_Handler New_Statement_Handler; =================================================================== RCS file: /cvs/e/e17/libs/edje/src/bin/edje_cc_handlers.c,v retrieving revision 1.85 retrieving revision 1.86 diff -u -3 -r1.85 -r1.86 --- edje_cc_handlers.c 29 May 2008 02:00:03 -0000 1.85 +++ edje_cc_handlers.c 28 Jun 2008 09:11:48 -0000 1.86 @@ -749,7 +749,7 @@ di->key = parse_str(0); filename = parse_str(1); - fd = open(filename, O_RDONLY); + fd = open(filename, O_RDONLY | O_BINARY); if (fd < 0) { fprintf(stderr, "%s: Error. %s:%i when opening file \"%s\": \"%s\"\n", =================================================================== RCS file: /cvs/e/e17/libs/edje/src/bin/edje_cc_out.c,v retrieving revision 1.62 retrieving revision 1.63 diff -u -3 -r1.62 -r1.63 --- edje_cc_out.c 6 Jun 2008 18:52:19 -0000 1.62 +++ edje_cc_out.c 28 Jun 2008 09:11:48 -0000 1.63 @@ -610,7 +610,7 @@ char tmpo[4096]; int ret; - f = fopen(tmpn, "w"); + f = fopen(tmpn, "wb"); if (f) { Evas_List *ll; =================================================================== RCS file: /cvs/e/e17/libs/edje/src/bin/edje_cc_parse.c,v retrieving revision 1.52 retrieving revision 1.53 diff -u -3 -r1.52 -r1.53 --- edje_cc_parse.c 19 Jun 2008 12:47:04 -0000 1.52 +++ edje_cc_parse.c 28 Jun 2008 09:11:48 -0000 1.53 @@ -611,7 +611,7 @@ int fd; off_t size; char *data, *p; - char *tmpdir; + const char *tmpdir; #ifdef HAVE_EVIL tmpdir = evil_tmpdir_get(); @@ -693,7 +693,7 @@ free(def); */ } - fd = open(file_in, O_RDONLY); + fd = open(file_in, O_RDONLY | O_BINARY); if (fd < 0) { fprintf(stderr, "%s: Error. cannot open file \"%s\" for input. %s\n", =================================================================== RCS file: /cvs/e/e17/libs/edje/src/bin/edje_decc.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -3 -r1.27 -r1.28 --- edje_decc.c 7 Jun 2008 10:06:13 -0000 1.27 +++ edje_decc.c 28 Jun 2008 09:11:48 -0000 1.28 @@ -226,7 +226,7 @@ printf("ERROR: potential security violation. attempt to write in parent dir.\n"); exit (-1); } - f = fopen(out, "w"); + f = fopen(out, "wb"); if (!f) { printf("ERROR: unable to write file (%s).\n", out); @@ -292,7 +292,7 @@ printf("ERROR: potential security violation. attempt to write in parent dir.\n"); exit (-1); } - f = fopen(out, "w"); + f = fopen(out, "wb"); fprintf(f, "#!/bin/sh\n"); fprintf(f, "%s $@ -id . -fd . %s -o %s.edj\n", edje_file->compiler, sf->name, outdir); fclose(f); ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs