build(docs-infra): be able to resolve root-relative image URLs in getImageDimensions() (#46138)

Previously, `getImageDimensions()` would try to resolve image URLs
relative to the base path using `path.resolve()`. This resulted in
root-relative URLs (i.e. URLs starting with `/`) being treated as
absolute filesystem paths and thus resolving incorrectly
([example failure][1]).

This commit fixes it by using `.join()` instead, which is more
appropriate in this case. (Originally discussed [here][2].)

[1]: https://circleci.com/gh/angular/angular/1173150
[2]: https://github.com/angular/angular/pull/46134#issuecomment-1137191996

PR Close #46138
This commit is contained in:
George Kalpakas
2022-05-25 21:32:53 +03:00
committed by Andrew Scott
parent 0bc77f4cab
commit 1798ce99b6
@@ -1,6 +1,6 @@
const { resolve } = require('canonical-path');
const { join } = require('canonical-path');
const sizeOf = require('image-size');
module.exports = function getImageDimensions() {
return (basePath, path) => sizeOf(resolve(basePath, path));
return (basePath, path) => sizeOf(join(basePath, path));
};