From cc5237de1b17210373fdd2b11c135e3314aff252 Mon Sep 17 00:00:00 2001 From: Michaelangel007 Date: Mon, 11 Dec 2017 08:19:33 -0800 Subject: [PATCH] Simply meta file writing --- prodos.tools.cpp | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/prodos.tools.cpp b/prodos.tools.cpp index 51c0c0f..56dbb1d 100644 --- a/prodos.tools.cpp +++ b/prodos.tools.cpp @@ -1343,18 +1343,24 @@ bool ProDOS_FileExtract( const char *path ) printf( "Saving meta... %s\n", sAttrib ); FILE *pFileMeta = fopen( sAttrib, "w+b" ); + + if( !pFileMeta ) { - fprintf( pFileMeta, "kind = 0x%02X\n", pEntry->kind ); - fprintf( pFileMeta, "date = 0x%04X\n", pEntry->date ); - fprintf( pFileMeta, "time = 0x%04X\n", pEntry->time ); - fprintf( pFileMeta, "cver = 0x%02X\n", pEntry->cur_ver ); - fprintf( pFileMeta, "mver = 0x%02X\n", pEntry->min_ver ); - fprintf( pFileMeta, "aux = 0x%04X\n", pEntry->aux ); - fprintf( pFileMeta, "modd = 0x%04X\n", pEntry->mod_date ); - fprintf( pFileMeta, "modt = 0x%04X\n", pEntry->mod_time ); - fclose( pFileMeta ); + printf( "ERROR: Couldnt' open attribute file for writing: %s\n", sAttrib ); + return false; } + fprintf( pFileMeta, "kind = 0x%02X\n", pEntry->kind ); + fprintf( pFileMeta, "date = 0x%04X\n", pEntry->date ); + fprintf( pFileMeta, "time = 0x%04X\n", pEntry->time ); + fprintf( pFileMeta, "cver = 0x%02X\n", pEntry->cur_ver ); + fprintf( pFileMeta, "mver = 0x%02X\n", pEntry->min_ver ); + fprintf( pFileMeta, "aux = 0x%04X\n", pEntry->aux ); + fprintf( pFileMeta, "modd = 0x%04X\n", pEntry->mod_date ); + fprintf( pFileMeta, "modt = 0x%04X\n", pEntry->mod_time ); + fclose( pFileMeta ); + + int addr = pEntry->inode * PRODOS_BLOCK_SIZE; int size = pEntry->size;