* **Version**: 9.3.0 * **Platform**: `Linux 4.9.77 x86_64 GNU/Linux` * **Subsystem**: `require.resolve` To replicate create a directory with the following files: `test.js` `index.js` `exists/index.js` both of the `index.js` files can contain anything. They only have to exist. `test.js` should contain the following: ```js 'use strict'; let assert = require('assert'); const OPTS = { paths: ['./imaginary', './exists'] }; const FILE = 'index.js'; let bare = require.resolve(FILE, OPTS); let dot = require.resolve(`./${FILE}`, OPTS); console.info(`bare: ${bare}`); console.info(`dot: ${dot}`); assert.strictEqual(bare, dot); ``` Execute the `test.js` file with `node test.js` on `v9.3.0` or later. As you can see from the code in the test, simply adding `./` to the file name to be resolved causes a local matching file to be returned. **Specifically**: * When an earlier path in the paths array doesn't exist * Even though there is a matching file in a path that does exist later in the paths array. This bug was introduced in `v9.3.0`. `v9.2.1` and prior behave correctly.