int main(int argc, const char *argv[]) { int fd; char filename[MAX_FILENAME]; static META_DATA meta; //File specified in command line if (argc == 2) { memcpy(filename, argv[1], MAX_FILENAME); getLock(filename); if (open(filename, O_RDONLY, 0600) == -1){ printf("ERROR: File doesn't exist\n"); close(fd); removeLock(filename); exit(1); } close(fd); removeLock(filename); } if (argc == 1) { //Read filename from .draw_config getLock(filename); fd = open (".draw_config", O_RDONLY, 0600); read (fd, filename, MAX_FILENAME); close (fd); removeLock(filename); } if (argc == 1 || argc == 2) { initCurses(); //Open canvas file fd = open (filename, O_RDONLY, 0600); //read metadata from file read (fd, &meta, sizeof(META_DATA)); //read first FIGURE from file if(meta.numP > 0) { showPeople(fd, meta); } } close(fd); removeLock(filename); refresh(); endCurses(); return 0; }
void SerialPortMacOS::closeLink() { if (isOpen() == true) { this->flush(); close(ttyDeviceFileDescriptor); ttyDeviceFileDescriptor = -1; removeLock(); } }
void SerialPortWindows::closeLink() { if (isOpen()) { this->flush(); CloseHandle(ttyDeviceFileDescriptor); ttyDeviceFileDescriptor = INVALID_HANDLE_VALUE; removeLock(); } }