summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lc3.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/lc3.c b/lc3.c
index 854a3ec..0a0ad97 100644
--- a/lc3.c
+++ b/lc3.c
@@ -415,13 +415,10 @@ void step(const uint16_t instruction)
}
}
-int read_image(const char * path)
+void read_image(const char * path)
{
const int fd = open(path, O_RDONLY);
- if (-1 == fd)
- {
- return -1;
- }
+ die(fd, "read_image open()");
uint16_t origin;
ssize_t length = read(fd, &origin, sizeof(origin));
die(length, "read_image read origin");
@@ -435,7 +432,7 @@ int read_image(const char * path)
*dest = be16toh(*dest);
dest++;
}
- return close(fd);
+ die(close(fd), "read_image close()");
}
int main(int argc, char ** argv)
@@ -446,7 +443,7 @@ int main(int argc, char ** argv)
}
for (int i = 1; i < argc; ++i)
{
- die(read_image(argv[i]), "read_image");
+ read_image(argv[i]);
}
signal(SIGINT, handle_signal);
atexit(restore_terminal);