Bug 53011 - Дублирование кнопок уведомления
Summary: Дублирование кнопок уведомления
Status: ASSIGNED
Alias: None
Product: Branch p11
Classification: Unclassified
Component: plasma-workspace (show other bugs)
Version: unspecified
Hardware: x86_64 Linux
: P5 minor
Assignee: Олег Соловьев
QA Contact: qa-p11@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-02-10 08:51 MSK by Darkles70rus
Modified: 2025-03-27 11:01 MSK (History)
9 users (show)

See Also:


Attachments
скрин бага (24.37 KB, image/png)
2025-02-10 08:51 MSK, Darkles70rus
no flags Details
скриншот (30.32 KB, image/png)
2025-02-10 11:20 MSK, Alexander Makeenkov
no flags Details
Некорректное отображение уведомления о недостатке ОЗУ (133.64 KB, image/png)
2025-03-26 23:21 MSK, Никита
no flags Details
Приложение 2 (227.20 KB, image/png)
2025-03-26 23:22 MSK, Никита
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Darkles70rus 2025-02-10 08:51:39 MSK
Created attachment 17709 [details]
скрин бага

Норма ли это?
на уведомления не реагировал, не закрывал, кнопки не нажимал, с каждым новы уведомлением количество кнопок увеличивалось на 2
P.S. не разобрался что за "Компонент"
Comment 1 Arseny Maslennikov 2025-02-10 11:14:25 MSK
(In reply to Darkles70rus from comment #0)
> P.S. не разобрался что за "Компонент"

Компонент — это имя пакета, в котором бага. Пакет p11-kit — это про PKCS11, вообще не то.
Если не знаете, в каком пакете локализована ошибка, то, возможно, вешать багу нужно не на пакет в p11/сизифе, а на стартеркит/регулярку, и идти дальше оттуда. (Может, у нас другое правило действует?)
Comment 2 Arseny Maslennikov 2025-02-10 11:14:39 MSK
Brave не упакован в сизиф.
Увидел плазму; перевешиваю "куда-то туда".
Comment 3 Alexander Makeenkov 2025-02-10 11:20:17 MSK
Created attachment 17712 [details]
скриншот

Подтверждаю ошибку.
Comment 4 Никита 2025-03-26 23:19:45 MSK
Здравствуйте. Сегодня в ходе работ был исчерпан лимит ОЗУ. 
Как и положено отработал `freememorynotifier`, но с некоторой 
особенностью: каждое обновление уведомление добавляет один набор 
кнопок(Приложение 1). Если еще раз вызвать недостаток памяти после 
ее читки `oom` или руками, то массив этих наборов не очистится, 
а продолжит свое расширение.

Открыл файл перевода для проблемного пакета и по сообщению ошибки 
нашел проблемное место: `freememorynotifier.cpp:223`. Здесь в 
существующее уведомление **устанавливается** текст сообщения и 
**добавляются** две кнопки. Учитывая, что экземпляр KNotification 
существует с момента его первой надобности и до завершения процесса 
службы, это и дает описанный выше эффект. Из очевидного решения 
напрашивается добавление `void KNotification::clearActions ()`.
Еще из странного. Метод `FreeMemoryNotifier::closeNotification()`
не удаляет указатель на уведомление. А учитывая, что он, в том числе, 
вызывается в деструкторе FreeMemoryNotifier, это намекает на утечку 
памяти.

Уведомления `oom-notifier` ведут себя как-то странно(Приложение 2).
После открытия spectacle они переместились в штатное положение,
но у них нет таймера на автоматическое скрытие. Норма это или нет
не знаю.

Создавал новую ошибку и по аннотацию нашел эту. Форма уведомлений
почему-то другая, но суть эта же.
Comment 5 Никита 2025-03-26 23:21:48 MSK
Created attachment 18094 [details]
Некорректное отображение уведомления о недостатке ОЗУ

Почему процессом выведен plasmashell не знаю, недостаток памяти вызван python3
Comment 6 Никита 2025-03-26 23:22:41 MSK
Created attachment 18095 [details]
Приложение 2

Странное отображение уведомлений от oom-notifier
Comment 7 Олег Соловьев 2025-03-27 11:01:35 MSK
Task #379375 на сборке

(In reply to Никита from comment #4)
> Еще из странного. Метод `FreeMemoryNotifier::closeNotification()`
> не удаляет указатель на уведомление. А учитывая, что он, в том числе, 
> вызывается в деструкторе FreeMemoryNotifier, это намекает на утечку 
> памяти.
> 
> Уведомления `oom-notifier` ведут себя как-то странно(Приложение 2).
> После открытия spectacle они переместились в штатное положение,
> но у них нет таймера на автоматическое скрытие. Норма это или нет
> не знаю.

Не захламляйте багрепорт своими "и ещё кое-что".
Одна ошибка = один репорт, а у Вас в репорте сразу три ошибки.