If I need to open a URL that contains a query string, everything after the first ampersand is ignored
URL w("https://www.mysite.com/?parameter1=value¶meter2=value");
w.launchInDefaultBrowser();
The browser opens with just https://www.mysite.com/?parameter1=value
. I think this is due to the fact that, under Linux, launching the browser with a URL is done from bash, and the ampersand symbol in bash is a control symbol that causes the command to run in the background.
I think the problem is in the file \modules\juce_core\native\juce_linux_Files.cpp in the function bool Process::openDocument (const String& fileName, const String& parameters)
Quoting the command argument would fix the issue as the whole URL would be passed as string and the ampersand becomes part of the string.
Meanwhile, I’m doing this from my code, passing the URL string as a quoted string only for the Linux platform using compiler switches.