aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/bindings/BunString.cpp
diff options
context:
space:
mode:
authorGravatar Dylan Conway <dylan.conway567@gmail.com> 2023-08-31 17:44:16 -0700
committerGravatar Dylan Conway <dylan.conway567@gmail.com> 2023-08-31 17:44:16 -0700
commit7528ea00843f7c33b8e3017ca28b83cca556f783 (patch)
tree1bde419e3674efe2d06bec754ee6e82176ec80f0 /src/bun.js/bindings/BunString.cpp
parent4d944773f0234262e2df0dfd10cb564d3cdf6125 (diff)
parent59edbe645ca568aa6438f8fa53c1a567cf1159c0 (diff)
downloadbun-7528ea00843f7c33b8e3017ca28b83cca556f783.tar.gz
bun-7528ea00843f7c33b8e3017ca28b83cca556f783.tar.zst
bun-7528ea00843f7c33b8e3017ca28b83cca556f783.zip
Merge branch 'main' into dylan/non-enumerable-export-values
Diffstat (limited to 'src/bun.js/bindings/BunString.cpp')
-rw-r--r--src/bun.js/bindings/BunString.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/bun.js/bindings/BunString.cpp b/src/bun.js/bindings/BunString.cpp
index 8c5a1e66b..416d5d334 100644
--- a/src/bun.js/bindings/BunString.cpp
+++ b/src/bun.js/bindings/BunString.cpp
@@ -381,6 +381,17 @@ extern "C" BunString URL__getHref(BunString* input)
return Bun::toStringRef(url.string());
}
+extern "C" BunString URL__getHrefJoin(BunString* baseStr, BunString *relativeStr)
+{
+ auto base = Bun::toWTFString(*baseStr);
+ auto relative = Bun::toWTFString(*relativeStr);
+ auto url = WTF::URL(WTF::URL(base), relative);
+ if (!url.isValid() || url.isEmpty())
+ return { BunStringTag::Dead };
+
+ return Bun::toStringRef(url.string());
+}
+
extern "C" WTF::URL* URL__fromString(BunString* input)
{
auto&& str = Bun::toWTFString(*input);