diff --git a/os/src/test/rom_blk/main.cc b/os/src/test/rom_blk/main.cc
index c4b4fafb8d..69031b7665 100644
--- a/os/src/test/rom_blk/main.cc
+++ b/os/src/test/rom_blk/main.cc
@@ -17,6 +17,7 @@
#include
#include
#include
+#include
#include
#include
#include
@@ -31,6 +32,8 @@ class Comparer : public Genode::Thread<8192>
Genode::Rom_connection _rom;
Genode::addr_t _addr;
+ class Block_file_differ : Genode::Exception {};
+
public:
enum {
@@ -87,8 +90,10 @@ class Comparer : public Genode::Thread<8192>
if (blk_src[j*blk_size+k] != rom_src[j*blk_size+k])
differ = true;
}
- if (differ)
+ if (differ) {
PWRN("block %zx differs!", i);
+ throw Block_file_differ();
+ }
source->release_packet(p);
} catch (Block::Session::Tx::Source::Packet_alloc_failed) {
PERR("Mmh, strange we run out of packets");