Some applications and scripts still use $BROWSER as their primary means of allowing user customization. However, xdg-open makes no attempt to guard against self-calling when falling back to $BROWSER. This makes it dangerous to set BROWSER=xdg-open in order to portably integrate older applications with GUI-based mechanisms for specifying the user's preferred browser.
I looked over the code, and while the possibility of hitting this case is small, it's not exactly zero either, so... http://cgit.freedesktop.org/xdg/xdg-utils/commit/?id=1d292e3cff57998be1a4e29369df5cbdcff154b2
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.