GNOME Bugzilla – Bug 73781
Missing GError return from gnome_url_show
Last modified: 2004-12-22 21:47:04 UTC
gnome terminal is able to launch clicked-on URLs, but presently has no way to configure which program will be used, it is not reported anywhere and there is no error feedback (other than a browser window not showing up) that the operation wasn't successful (say 'program not found' or similar).
It uses the gnome-wide URL launcher, which is under Applications->Preferences->Advanced->Preferred Programs.
I display any errors that libgnome returns from gnome_url_show, so it must not be reporting them for whatever goes wrong in your case.
Looking at this it seems that the /desktop/applications/browser gconf key isn't used at all, instead we use the /desktop/url-handlers/{http|ftp|unknown|etc} gconf keys for determining what url handler to use. I think the plan was to be able to configure this through the file types capplet but I'm not sure. Also, gnome-url uses g_spawn_async to execute the url handler program and this function doesn't seem to detect "command not found" errors, but you know this better than me, Havoc.
gspawn certainly _should_ be detecting command not found errors... if it doesn't that's an issue.
I think the problem here is that we launch /bin/bash with the executable as an argument, so we're getting the not found message from bash. Can we launch the web browser without using the shell?
I personally tend to think we shouldn't use the shell (for this and also for security reasons). George is the main person who's historically disagreed.
OK, I agree with you here. Any reason why George thinks we should use the shell?
Presumably so you can use shell syntax. I don't think it's useful though. I vote to kill it.
OK, I've fixed this in CVS. Havoc: If you have time, please have a look at gnome-url.c and verify that I haven't done anything wrong.