Browse Source

test: fix test-module-loading-error for musl

When a compiled library file does not have the proper format,
musl returns the error message ENOEXEC as 'Exec format error' but
glibc returns 'file too short' if the file is under a certain size.

Reference:
http://git.musl-libc.org/cgit/musl/tree/src/errno/__strerror.h#n46

This patch consists of tolerating musl's error.

PR-URL: https://github.com/nodejs/node/pull/3657
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
v5.x
Hugues Malphettes 9 years ago
committed by Jeremiah Senkpiel
parent
commit
81997840f2
  1. 5
      test/parallel/test-module-loading-error.js

5
test/parallel/test-module-loading-error.js

@ -9,6 +9,7 @@ var error_desc = {
linux: 'file too short',
sunos: 'unknown file type'
};
var musl_errno_enoexec = 'Exec format error';
var dlerror_msg = error_desc[process.platform];
@ -20,6 +21,10 @@ if (!dlerror_msg) {
try {
require('../fixtures/module-loading-error.node');
} catch (e) {
if (process.platform === 'linux' &&
e.toString().indexOf(musl_errno_enoexec) !== -1) {
dlerror_msg = musl_errno_enoexec;
}
assert.notEqual(e.toString().indexOf(dlerror_msg), -1);
}

Loading…
Cancel
Save