diff xm2jss.c @ 300:4972ca91d062

Cleanups.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 11 Oct 2012 17:55:15 +0300
parents 245b15cd1919
children b620ffe1c27e
line wrap: on
line diff
--- a/xm2jss.c	Thu Oct 11 17:50:06 2012 +0300
+++ b/xm2jss.c	Thu Oct 11 17:55:15 2012 +0300
@@ -20,7 +20,7 @@
 static const char jmpMODEffectTable[jmpNMODEffectTable] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 
 
-char  *srcFilename = NULL, *destFilename = NULL;
+char  *optInFilename = NULL, *optOutFilename = NULL;
 BOOL  optIgnoreErrors = FALSE,
       optStripExtInstr = FALSE,
       optStripInstr = FALSE,
@@ -122,7 +122,7 @@
         break;
     
     case 6:
-        destFilename = optArg;
+        optOutFilename = optArg;
         break;
 
     default:
@@ -137,11 +137,13 @@
 BOOL argHandleFile(char *currArg)
 {
     // Was not option argument
-    if (!srcFilename)
-        srcFilename = currArg;
+    if (!optInFilename)
+        optInFilename = currArg;
+    if (!optOutFilename)
+        optOutFilename = currArg;
     else
     {
-        dmError("Gay error '%s'.\n", currArg);
+        dmError("Too many filename arguments specified, '%s'.\n", currArg);
         return FALSE;
     }
     
@@ -922,15 +924,19 @@
         argHandleOpt, argHandleFile, TRUE))
         exit(1);
 
+    // Check arguments
+    if (optInFilename == NULL || optOutFilename == NULL)
+    {
+        dmError("Source and/or destination filename not specified. Try --help.\n");
+        dmError("Input or output file not specified. Try --help.\n");
+        return 1;
+    }
 
     // Read the source file
-    if (srcFilename == NULL)
-        sfile = dmf_create_stdio_stream(stdin);
-    else
-    if ((sfile = dmf_create_stdio(srcFilename, "rb")) == NULL)
+    if ((sfile = dmf_create_stdio(optInFilename, "rb")) == NULL)
     {
         dmError("Error opening input file '%s', %d: %s\n",
-            srcFilename, errno, strerror(errno));
+            optInFilename, errno, strerror(errno));
         return 1;
     }
 
@@ -1006,11 +1012,10 @@
         dm = sm;
 
     // Write output file
-    if (destFilename == NULL)
-        dfile = stdout;
-    else if ((dfile = fopen(destFilename, "wb")) == NULL)
+    if ((dfile = fopen(optOutFilename, "wb")) == NULL)
     {
-        dmError("Error creating output file '%s'. (%s)\n", destFilename, strerror(errno));
+        dmError("Error creating output file '%s', %d: %s\n",
+            optOutFilename, errno, strerror(errno));
         return 1;
     }
 
@@ -1023,9 +1028,13 @@
     
     if (result != 0)
     {
-        dmError("Error while saving JSSMOD file (%i), the resulting file may be broken!\n", result);
+        dmError("Error while saving JSSMOD file, %d: %s\n",
+            result, dmErrorStr(result));
+        dmError("WARNING: The resulting file may be broken!\n");
     }
-
-    dmMsg(1, "Conversion complete.\n");
+    else
+    {
+        dmMsg(1, "Conversion complete.\n");
+    }
     return 0;
 }