]> j8takagi.net Git Repository - YACASL2.git/commitdiff
オブジェクトファイルの読込時、領域が足りない場合はすぐエラー201を発生
authorj8takagi <j8takagi@nifty.com>
Sat, 13 Feb 2010 17:20:09 +0000 (02:20 +0900)
committerj8takagi <j8takagi@nifty.com>
Sat, 13 Feb 2010 17:20:09 +0000 (02:20 +0900)
src/comet2.c

index a3fc2a061f294b802cbb4e86f40f6567ad473705..e2a9e3c6ccd23023546536d1197ef24f3802cb0d 100644 (file)
@@ -34,7 +34,11 @@ bool loadassemble(char *file) {
         perror(file);
         return false;
     }
-    endptr = startptr + fread(memory, sizeof(WORD), memsize, fp);
+    if((endptr = startptr + fread(memory, sizeof(WORD), memsize-startptr, fp)) == memsize) {
+        setcerr(201, NULL);    /* Load object file - full of COMET II memory */
+        fprintf(stderr, "Execute error - %d: %s\n", cerrno, cerrmsg);
+        return false;
+    }
     fclose(fp);
     return true;
 }