Fix path.join to extension

9cff3861b49ee9253b40c2780aa0c20908b7dc32

Cohee <18619528+Cohee1207@users.noreply.github.com>

1 files changed, +5 -5Ignore whitespace
src/endpoints/extensions.js+5 -5
@@ -132,7 +132,7 @@ router.post('/update', async (request, response) => {
132 }132 }
133133
134 const basePath = global ? PUBLIC_DIRECTORIES.globalExtensions : request.user.directories.extensions;134 const basePath = global ? PUBLIC_DIRECTORIES.globalExtensions : request.user.directories.extensions;
135 const extensionPath = path.join(basePath, extensionName);135 const extensionPath = path.join(basePath, sanitize(extensionName));
136136
137 if (!fs.existsSync(extensionPath)) {137 if (!fs.existsSync(extensionPath)) {
138 return response.status(404).send(`Directory does not exist at ${extensionPath}`);138 return response.status(404).send(`Directory does not exist at ${extensionPath}`);
@@ -174,7 +174,7 @@ router.post('/branches', async (request, response) => {
174 }174 }
175175
176 const basePath = global ? PUBLIC_DIRECTORIES.globalExtensions : request.user.directories.extensions;176 const basePath = global ? PUBLIC_DIRECTORIES.globalExtensions : request.user.directories.extensions;
177 const extensionPath = path.join(basePath, extensionName);177 const extensionPath = path.join(basePath, sanitize(extensionName));
178178
179 if (!fs.existsSync(extensionPath)) {179 if (!fs.existsSync(extensionPath)) {
180 return response.status(404).send(`Directory does not exist at ${extensionPath}`);180 return response.status(404).send(`Directory does not exist at ${extensionPath}`);
@@ -200,7 +200,7 @@ router.post('/branches', async (request, response) => {
200 return response.send(result);200 return response.send(result);
201 } catch (error) {201 } catch (error) {
202 console.error('Getting branches failed', error);202 console.error('Getting branches failed', error);
203 return response.status(500).send('Internal Server Error. Try again later.');203 return response.status(500).send('Internal Server Error. Check the server logs for more details.');
204 }204 }
205});205});
206206
@@ -220,7 +220,7 @@ router.post('/switch', async (request, response) => {
220 }220 }
221221
222 const basePath = global ? PUBLIC_DIRECTORIES.globalExtensions : request.user.directories.extensions;222 const basePath = global ? PUBLIC_DIRECTORIES.globalExtensions : request.user.directories.extensions;
223 const extensionPath = path.join(basePath, extensionName);223 const extensionPath = path.join(basePath, sanitize(extensionName));
224224
225 if (!fs.existsSync(extensionPath)) {225 if (!fs.existsSync(extensionPath)) {
226 return response.status(404).send(`Directory does not exist at ${extensionPath}`);226 return response.status(404).send(`Directory does not exist at ${extensionPath}`);
@@ -304,7 +304,7 @@ router.post('/move', async (request, response) => {
304 return response.sendStatus(204);304 return response.sendStatus(204);
305 } catch (error) {305 } catch (error) {
306 console.error('Moving extension failed', error);306 console.error('Moving extension failed', error);
307 return response.status(500).send('Internal Server Error. Try again later.');307 return response.status(500).send('Internal Server Error. Check the server logs for more details.');
308 }308 }
309});309});
310310