diff options
-rw-r--r-- | tests/fs-tests/integrity/integck.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c index 1b08acc..b411a68 100644 --- a/tests/fs-tests/integrity/integck.c +++ b/tests/fs-tests/integrity/integck.c @@ -69,12 +69,18 @@ check_failed(stringify(cond), __func__, __FILE__, __LINE__); \ } while(0) +#define CHECK_ERRNO() do { \ + if (args.power_cut_mode) \ + CHECK(errno == EROFS); \ + else \ + CHECK(0); \ +} while(0) + #define pcv(fmt, ...) do { \ if (!args.power_cut_mode || (args.power_cut_mode && args.verbose)) \ normsg(fmt " (line %d, error %d (%s))", \ ##__VA_ARGS__, __LINE__, errno, strerror(errno)); \ - if (!args.power_cut_mode) \ - CHECK(0); \ + CHECK_ERRNO(); \ } while(0) /* The variables below are set by command line arguments */ |