From 542c4ff2b4cfea049a498d827ea35a2600235e7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Mon, 11 Dec 2017 20:36:48 +0100 Subject: Fix problem with no such file or directory Yep when object was instantiated it wasn't copying elf_path so now fixed (should also not forget to do the same with other options too). --- qtmips_machine/machineconfig.cpp | 1 + qtmips_machine/programloader.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/qtmips_machine/machineconfig.cpp b/qtmips_machine/machineconfig.cpp index f23140f..7538765 100644 --- a/qtmips_machine/machineconfig.cpp +++ b/qtmips_machine/machineconfig.cpp @@ -8,6 +8,7 @@ MachineConfig::MachineConfig() { MachineConfig::MachineConfig(MachineConfig *cc) { pipeline = cc->pipelined(); jumppred = cc->jump_prediction(); + elf_path = cc->elf(); } void MachineConfig::set_pipelined(bool v) { diff --git a/qtmips_machine/programloader.cpp b/qtmips_machine/programloader.cpp index f49fa3c..bad0a82 100644 --- a/qtmips_machine/programloader.cpp +++ b/qtmips_machine/programloader.cpp @@ -12,7 +12,7 @@ ProgramLoader::ProgramLoader(const char *file) { throw QTMIPS_EXCEPTION(Input, "Elf library initialization failed", elf_errmsg(-1)); // Open source file if ((this->fd = open(file, O_RDONLY, 0)) < 0) - throw QTMIPS_EXCEPTION(Input, "Can't open input elf file for reading", std::strerror(errno)); + throw QTMIPS_EXCEPTION(Input, QString("Can't open input elf file for reading (") + QString(file) + QString(")"), std::strerror(errno)); // Initialize elf if (!(this->elf = elf_begin(this->fd, ELF_C_READ, NULL))) throw QTMIPS_EXCEPTION(Input, "Elf read begin failed", elf_errmsg(-1)); -- cgit v1.2.3