comparison lwasm/pseudo.c @ 349:b62af915c2cc

Fix includebin to use binary mode when emitting the contents of the file. For systems with the stupid distinction between binary and text files (I'm looking at you Windows), actually specify binary mode when reading the include file for a binary include. It worked fine on Linux and other Unix-like systems which treat files as a simple sequence of bytes but on Windows, you get the benefit of 0x1A causing an EOF signal with text mode files which is not helpful.
author William Astle <lost@l-w.ca>
date Sun, 12 Apr 2015 12:11:19 -0600
parents cb24ffb23f7c
children f318407d2469
comparison
equal deleted inserted replaced
348:379ef4e08dd2 349:b62af915c2cc
1370 EMITFUNC(pseudo_emit_includebin) 1370 EMITFUNC(pseudo_emit_includebin)
1371 { 1371 {
1372 FILE *fp; 1372 FILE *fp;
1373 int c; 1373 int c;
1374 1374
1375 fp = fopen(l -> lstr, "r"); 1375 fp = fopen(l -> lstr, "rb");
1376 if (!fp) 1376 if (!fp)
1377 { 1377 {
1378 lwasm_register_error(as, l, "Cannot open file (emit)!"); 1378 lwasm_register_error(as, l, "Cannot open file (emit)!");
1379 return; 1379 return;
1380 } 1380 }