comparison file.c @ 6:f67d9be38ddf

Merged parser changes and Linux box enhancements
author Mike Pavone <pavone@retrodev.com>
date Wed, 13 May 2009 00:43:58 -0400
parents 94c885692eb5
children 20d40cb8abf3
comparison
equal deleted inserted replaced
5:a4d2d633a356 6:f67d9be38ddf
539 release_ref(inputlist[0]); 539 release_ref(inputlist[0]);
540 inputlist[0] = new_datum(BUILTIN_TYPE_WHOLE, 2, 0, worker_entry->instance->def->program); 540 inputlist[0] = new_datum(BUILTIN_TYPE_WHOLE, 2, 0, worker_entry->instance->def->program);
541 inputlist[0]->c.integers.num_a = size; 541 inputlist[0]->c.integers.num_a = size;
542 return 0; 542 return 0;
543 } 543 }
544
545 int vis_file_truncate(datum ** inputlist, queue_entry * worker_entry)
546 {
547 file_data * file;
548 inputlist[0] = copy_datum(inputlist[0], 0);
549 file = inputlist[0]->c.generic.data;
550 VIS_EnterCriticalSection(file->shared->lock);
551 switch(file->shared->status)
552 {
553 case FILE_READ:
554 case FILE_WRITE:
555 fclose(file->shared->file);
556 default:
557 break;
558 }
559 file->shared->file = fopen(file->shared->name,"wb");
560 file->shared->size = 0;
561 file->shared->status = FILE_WRITE;
562 VIS_LeaveCriticalSection(file->shared->lock);
563 file->offset = 0;
564 return 0;
565 }