Skip to content

Commit 7c27860

Browse files
Fix: "File Not Found" error when previewing HTML files from a Termux directory (#1282)
* fix. 404 error * format
1 parent f329f5f commit 7c27860

File tree

2 files changed

+33
-48
lines changed

2 files changed

+33
-48
lines changed

package-lock.json

Lines changed: 16 additions & 41 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/lib/run.js

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -507,6 +507,22 @@ async function run(
507507
});
508508
}
509509

510+
function makeUriAbsoluteIfNeeded(uri) {
511+
const termuxRootEncoded =
512+
"content://com.termux.documents/tree/%2Fdata%2Fdata%2Fcom.termux%2Ffiles%2Fhome";
513+
const termuxRootDecoded = "/data/data/com.termux/files/home";
514+
515+
if (uri.startsWith(termuxRootEncoded)) {
516+
// Extract subpath after `::` if already absolute
517+
if (uri.includes("::")) return uri;
518+
519+
const decodedPath = decodeURIComponent(uri.split("tree/")[1] || "");
520+
return `${termuxRootEncoded}::${decodedPath}/`;
521+
}
522+
523+
return uri;
524+
}
525+
510526
function getRelativePath() {
511527
// Get the project url
512528
const projectFolder = addedFolder[0];
@@ -518,13 +534,7 @@ async function run(
518534
}
519535

520536
//make the uri absolute if necessary
521-
if (
522-
rootFolder ===
523-
"content://com.termux.documents/tree/%2Fdata%2Fdata%2Fcom.termux%2Ffiles%2Fhome"
524-
) {
525-
rootFolder =
526-
"content://com.termux.documents/tree/%2Fdata%2Fdata%2Fcom.termux%2Ffiles%2Fhome::/data/data/com.termux/files/home/";
527-
}
537+
rootFolder = makeUriAbsoluteIfNeeded(rootFolder);
528538

529539
console.log("rootFolder", rootFolder);
530540
console.log("pathName", pathName);

0 commit comments

Comments
 (0)