Bug 4179

Summary: update-menus is vulnerable to broken menu files
Product: Sisyphus Reporter: Dmitry V. Levin <ldv>
Component: menuAssignee: Sergey V Turchin <zerg>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: blocker    
Priority: P2 CC: eostapets, inger, mike, pilot, viy, zerg
Version: unstable   
Hardware: all   
OS: Linux   
URL: http://bugzilla.altlinux.ru/show_bug.cgi?id=4169
Bug Depends on:    
Bug Blocks: 3459, 7079    
Attachments:
Description Flags
rpmdrake none

Description Dmitry V. Levin 2004-05-17 00:58:29 MSD
update-menus is known to be vulnerable to broken menu files.

That is, malformed file in /usr/lib/menu/ may cause update-menus to crash and
leave menus unfinished and incomplete.  This very bad behaviour should be fixed.
Comment 1 Sergey V Turchin 2004-05-17 13:44:47 MSD
Как воспроизвести падение? 
 
Comment 2 Dmitry V. Levin 2004-05-17 15:00:28 MSD
#4169 - не оно?

Я не утверждаю, что оно падает, я утверждаю, что один сломанный файл может
сломать всё меню.
Comment 3 Sergey V Turchin 2004-05-17 15:32:40 MSD
У меня #4169 не ломает генерацию всего остального меню 
Comment 4 Dmitry V. Levin 2004-05-17 19:00:01 MSD
Denis, could you help us, please?
Comment 5 Sergey V Turchin 2004-05-17 19:21:06 MSD
можно наблюдать 
update-menus -v -n 
 
Comment 6 Denis Ovsienko 2004-05-17 19:29:03 MSD
Can be reproduced on demand any time when I'm at home until my local Sisyphus
copy is the same.
Comment 7 Denis Ovsienko 2004-05-17 21:28:51 MSD
Проверил дома. На этот раз update-menus по-прежнему ругается на файл меню,
но меню не рушатся. Проверил для fluxbox и для gnome2 --- эффект не
повторяется (исходная ситуация наблюдалась на gnome2).
Но в этот раз есть одно отличие: если сейчас update-menus жалуется на файл
меню, но продолжает работать, то раньше он прекращал работу сразу же после
сообщения об ошибке.
Comment 8 Sergey V Turchin 2004-05-17 21:55:10 MSD
Это видимо на menu-2.1.5 было 
Comment 9 Denis Ovsienko 2004-05-17 22:43:45 MSD
Сизиф как был 20040506, так и остался. menu-2.1.9-alt10 в обоих случаях.
Comment 10 Denis Ovsienko 2004-05-25 13:42:13 MSD
Я собираюсь сегодня обновиться до вчерашнего Сизифа. Перед этим ещё какую-нибудь
диагностику ещё сделать?
Comment 11 Sergey V Turchin 2004-05-25 18:54:47 MSD
не знаю, вот если бы воспроизводилось 
Comment 12 Sergey V Turchin 2004-06-03 19:38:03 MSD
Не могу воспроизвести 
Comment 13 Denis Ovsienko 2004-06-03 20:07:10 MSD
Я уже сизиф обновил, по-прежнему не могу поймать снова, хотя menu опять ругается
на файл от supertux-xxxx-alt2 (в котором должен был файл исправиться). Пока
больше ничем помочь не могу, разве что посоветовать попробовать самостоятельно
написать зловредный файл, глядя на исходник.
Comment 14 Sergey V Turchin 2004-06-03 20:41:01 MSD
(In reply to comment #13) 
> Я уже сизиф обновил, по-прежнему не могу поймать снова, хотя menu опять 
ругается 
> на файл от supertux-xxxx-alt2 (в котором должен был файл исправиться) 
У меня то же самое 
Comment 15 Vitaly Lipatov 2004-06-18 14:36:16 MSD
Для воспроизведения проблемы можно поставить старый пакет rpmdrake, его файл 
меню останавливает update_menus, и меню не генерируется. 
Comment 16 Sergey V Turchin 2004-06-18 15:01:51 MSD
А можно его не ставить, а прикрепить сю (In reply to comment #15) 
> Для воспроизведения проблемы можно поставить старый пакет rpmdrake, его файл  
> меню останавливает update_menus, и меню не генерируется.  
А можно его не ставить, а прикрепить сюда этот меню-файл? 
Comment 17 Sergey V Turchin 2004-06-18 17:03:18 MSD
(In reply to comment #16) 
> А можно его не ставить, а прикрепить сюда этот меню-файл?  
Не нужно, я воспроизвел. 
 
Comment 18 Dmitry Vukolov 2005-05-18 01:18:20 MSD
В файле меню aMule указана section="Networking/File Transfer" (Transfer с
большой буквы). В результате из меню KDE полностью исчезает категория
"Сеть->Передача файлов" вместе со значками всех прочих программ данной секции.
При этом update-menus сообщений об ошибке не выводит. Если исправить Transfer на
transfer, то всё возвращается в норму.
Так задумано, что категории меню должны быть чувствительными к регистру?
Comment 19 Anton Farygin 2005-06-14 12:39:22 MSD
2Zerg: ничего не исправлялось ?
Comment 20 Sergey V Turchin 2005-06-14 16:32:33 MSD
C menu-файлом rpmdrake из M-2.0 menu не падает, но генерация накрывается, а 
это уже бог знает, когда исправят. Слишком дофига нам exception-ов. 
Comment 21 Dmitry V. Levin 2005-06-15 13:36:29 MSD
It is not really fixed, right?
Comment 22 Denis Ovsienko 2005-06-15 14:01:54 MSD
Я ничем не могу помочь, кроме совета просмотреть код.
Comment 23 Sergey V Turchin 2005-06-15 15:35:59 MSD
(In reply to comment #21) 
> It is not really fixed, right? 
Да, но не падает. 
Там exception слишком общего характера, поэтому я пока не знаю, как исправить. 
 
 
Comment 24 Michael Shigorin 2006-06-23 12:59:18 MSD
Выбросив menu?..
Comment 25 Sergey V Turchin 2006-06-23 13:51:53 MSD
(In reply to comment #24)
> Выбросив menu?..
Рановато пока.
$ grep /usr/lib/menu/ ./contents_index | wc -l
605
Comment 26 Sergey V Turchin 2006-06-23 13:54:14 MSD
Но зато уже
grep /usr/share/applications/ ./contents_index | wc -l
717
Т.е. уже преимущество за desktop-файлами
Comment 27 Sergey V Turchin 2006-09-05 18:51:18 MSD
У меня перестало воспроизводиться
menu-2.1.29
Comment 28 Sergey V Turchin 2006-09-05 18:53:36 MSD
Created attachment 1617 [details]
rpmdrake

menu-файл, с которым воспроизводилось из-за того, что там \n , а не \\n