Bug 28728

Summary: ошибка в open_generic()
Product: Sisyphus Reporter: dfo <dfo>
Component: xdg-utilsAssignee: Michael Shigorin <mike>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: major    
Priority: P3 CC: aen, boyarsh, cas, lav, manowar, mike, sem
Version: unstable   
Hardware: all   
OS: Linux   

Description dfo 2013-03-21 13:49:34 MSK
в xdg-utils в /usr/bin/xdg-open в open_generic() написано:
...
IFS=":"
...
eval '$browser $1'$xdg_redirect_output;

соответственно при попытке "xdg-open http://some-url" получается, что $browser зовётся с двумя аргументами - "http" и "//some-url", что не есть то, что хотелось бы.

я не знаю - чего они там хотели этим (IFS=:)добиться, поэтому патча не шлю.
Comment 1 Michael Shigorin 2014-05-24 21:06:50 MSK
*** Bug 28185 has been marked as a duplicate of this bug. ***
Comment 2 Michael Shigorin 2014-05-24 22:58:47 MSK
---
Патч для исправления бага (xdg-open):
632a633
> unset IFS

Если кратко, то у них перечень браузеров дается в строке через двоеточия, а
для цикла поиска браузера автор решил задавать переменную IFS. И эту
переменную после входа в тело цикла автор не обнуляет, поэтому двоеточия в
$1 вызывают разбиение параметров на части, которые самому браузеру были бы
видны как $1, $2 и т. д. У других людей не воспроизводилось, т. к. этот баг
в функции для generic DE.
--- Maxim Suhanov
Comment 3 Repository Robot 2014-05-24 23:38:35 MSK
xdg-utils-1.1.0-alt10 -> sisyphus:

* Sat May 24 2014 Michael Shigorin <mike@altlinux> 1.1.0-alt10
- xdg-open: fix totally broken IFS use (closes: #28728)
  + thanks Maxim Suhanov for analysis