Portability fixes.

git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@2262 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
meep-eep
2006-03-04 20:16:17 +00:00
parent 915f5335d1
commit d59d701871
+8 -4
View File
@@ -25,13 +25,13 @@ main(int argc, char *argv[]) {
return EXIT_FAILURE; return EXIT_FAILURE;
} }
in = fopen(argv[1], "r"); in = fopen(argv[1], "rb");
if (!in) { if (!in) {
perror("Could not open input file"); perror("Could not open input file");
return EXIT_FAILURE; return EXIT_FAILURE;
} }
out = fopen(argv[2], "w"); out = fopen(argv[2], "wb");
if (!out) { if (!out) {
perror("Could not open output file"); perror("Could not open output file");
return EXIT_FAILURE; return EXIT_FAILURE;
@@ -253,9 +253,9 @@ write_data(const uint8_t *data, ssize_t size, int numChannels, FILE *out) {
endptr = data + size; endptr = data + size;
srcptr = data; srcptr = data;
buffer = alloca(size * sizeof (uint16_t)); buffer = malloc(size * sizeof (uint16_t));
dstptr = buffer; dstptr = buffer;
last = alloca(numChannels * sizeof(int16_t)); last = malloc(numChannels * sizeof(int16_t));
memset(last, '\0', numChannels * sizeof(uint16_t)); memset(last, '\0', numChannels * sizeof(uint16_t));
while (srcptr < endptr) { while (srcptr < endptr) {
for (i = 0; i < numChannels; i++) { for (i = 0; i < numChannels; i++) {
@@ -270,5 +270,9 @@ write_data(const uint8_t *data, ssize_t size, int numChannels, FILE *out) {
} }
} }
fwrite(buffer, size * sizeof (uint16_t), 1, out); fwrite(buffer, size * sizeof (uint16_t), 1, out);
free(last);
free(buffer);
} }