diff --git a/vendor/DOtherSide/lib/include/DOtherSide/DOtherSide.h b/vendor/DOtherSide/lib/include/DOtherSide/DOtherSide.h index 03bce6c84e..35a077ef8c 100644 --- a/vendor/DOtherSide/lib/include/DOtherSide/DOtherSide.h +++ b/vendor/DOtherSide/lib/include/DOtherSide/DOtherSide.h @@ -113,6 +113,10 @@ DOS_API char * DOS_CALL dos_image_resizer(char* imagePath, int maxSize, char* tm DOS_API char * DOS_CALL dos_qurl_fromUserInput(char* input); +DOS_API char * DOS_CALL dos_qurl_host(char* host); + +DOS_API char * DOS_CALL dos_qurl_replaceHostAndAddPath(char* url, char* newScheme, char* newHost, char* pathPrefix); + /// \brief Sets the application icon DOS_API void DOS_CALL dos_qapplication_icon(const char *filename); diff --git a/vendor/DOtherSide/lib/src/DOtherSide.cpp b/vendor/DOtherSide/lib/src/DOtherSide.cpp index a05dd79e8f..12c2fe8511 100644 --- a/vendor/DOtherSide/lib/src/DOtherSide.cpp +++ b/vendor/DOtherSide/lib/src/DOtherSide.cpp @@ -1153,3 +1153,17 @@ char *dos_qurl_fromUserInput(char* input) { return convert_to_cstring(QUrl::fromUserInput(QString(input)).toString()); } + +char *dos_qurl_host(char* url) +{ + return convert_to_cstring(QUrl(QString(url)).host()); +} + +char *dos_qurl_replaceHostAndAddPath(char* url, char* newScheme, char* newHost, char* pathPrefix) +{ + auto newQurl = QUrl(QString(url)); + newQurl.setScheme(newScheme); + newQurl.setHost(newHost); + newQurl.setPath(QString(pathPrefix) + newQurl.path()); + return convert_to_cstring(newQurl.toString()); +}