<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>60108</bug_id>
          
          <creation_ts>2026-08-06 12:10:18 +0300</creation_ts>
          <short_desc>~/.config/QtProject.conf бесконечно разрастается</short_desc>
          <delta_ts>2026-08-06 12:10:18 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>qt6-base</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Жора Змейкин">me</reporter>
          <assigned_to name="Sergey V Turchin">zerg</assigned_to>
          <cc>zerg</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>292349</commentid>
    <comment_count>0</comment_count>
      <attachid>21993</attachid>
    <who name="Жора Змейкин">me</who>
    <bug_when>2026-08-06 12:10:18 +0300</bug_when>
    <thetext>Created attachment 21993
Исправляющий патч из upstream

Один раз столкнулся с проблемой, что Filelight слишком долго открывается. Покопавшись заметил, что ~/.config/QtProject.conf весит почти гигабайт

Файл раздувается из-за [FileDialog].shortcuts с повторяющимися символами. Нашёл багу в Qt и исправил (изменение должно попасть в Qt 6.11, но отдельный патч к баге прикладываю):
https://qt-project.atlassian.net/browse/QTBUG-133804
https://codereview.qt-project.org/c/qt/qtbase/+/757860/

QFileDialog из Qt 5 и Qt 6 использует один и тот же файл. При этом версии Qt несовместимо сериализуют не-ASCII символы:
- Qt 5 сохраняет их как INI escape-последовательности вида \xfa
- Qt 6 сохраняет их непосредственно в UTF-8.

Тобишь если запускать приложения на Qt 5 и Qt 6, эти значения каждый раз заново декодируются и кодируются, что вызывает рост файла.

# Шаги для воспроизведения
1. Создать каталог с не-ASCII символами, например:
&gt; mkdir -p ~/Música # Либо использовать кириллицу
2. Открыть файловый диалог в приложении на Qt 5, например в librecad
3. Добавить ~/Música в боковую панель файлового диалога и закрыть приложение.
4. Открыть и закрыть файловый диалог в приложении на Qt 6, например через:
&gt; drawpile --no-native-dialog
5. Снова открыть приложение на Qt 5.
6. Повторить переключение между Qt 5 и Qt 6 несколько раз.
7. Проверять размер ~/.config/QtProject.conf и содержимое FileDialog/shortcuts.

После каждого переключения оно будет разрастаться. Это не самый критичный баг, но не очевидный, если Qt приложения начинают медленно запускаться.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21993</attachid>
            <date>2026-08-06 12:10:18 +0300</date>
            <delta_ts>2026-08-06 12:10:18 +0300</delta_ts>
            <desc>Исправляющий патч из upstream</desc>
            <filename>qt6-base-QTBUG-133804-fully-encode-file-dialog-urls.patch</filename>
            <type>text/plain</type>
            <size>2136</size>
            <attacher name="Жора Змейкин">me</attacher>
            
              <data encoding="base64">U3ViamVjdDogW1BBVENIXSBRRmlsZURpYWxvZzogRnVsbHkgZW5jb2RlIHBlcnNpc3RlZCBVUkxz
CgpRdCA1IGFuZCBRdCA2IHVzZSBpbmNvbXBhdGlibGUgUVNldHRpbmdzIElOSSBlbmNvZGluZ3Mg
d2hpbGUgc2hhcmluZwpRdFByb2plY3QuY29uZi4gIEFsdGVybmF0aW5nIGZpbGUgZGlhbG9ncyBm
cm9tIGJvdGggdmVyc2lvbnMgcmVwZWF0ZWRseQpyZS1lbmNvZGVzIG5vbi1BU0NJSSBVUkxzIGFu
ZCBjYW4gZ3JvdyB0aGUgZmlsZSB3aXRob3V0IGJvdW5kLgoKU3RvcmUgdGhlIFFGaWxlRGlhbG9n
IFVSTCBmaWVsZHMgaW4gdGhlaXIgZnVsbHkgZW5jb2RlZCBBU0NJSSBmb3JtLiAgQm90aApRdCB2
ZXJzaW9ucyBkZWNvZGUgdGhpcyByZXByZXNlbnRhdGlvbiwgc28gdGhlIHNldHRpbmdzIHJlbWFp
biBjb21wYXRpYmxlCndpdGhvdXQgY2hhbmdpbmcgUVNldHRpbmdzIGdsb2JhbGx5LgoKRml4ZXM6
IFFUQlVHLTEzMzgwNApVcHN0cmVhbTogaHR0cHM6Ly9jb2RlcmV2aWV3LnF0LXByb2plY3Qub3Jn
L2MvcXQvcXRiYXNlLysvNzU3ODYwCkNoYW5nZS1JZDogSTZhMmVmMjYxYTc2ODUwZmVhNmViMTVm
MWI2ZGRiYzBlM2ZhMDE0YjYKUmV2aWV3ZWQtYnk6IFRoaWFnbyBNYWNpZWlyYSA8dGhpYWdvLm1h
Y2llaXJhQGludGVsLmNvbT4KCmRpZmYgLS1naXQgYS9zcmMvd2lkZ2V0cy9kaWFsb2dzL3FmaWxl
ZGlhbG9nLmNwcCBiL3NyYy93aWRnZXRzL2RpYWxvZ3MvcWZpbGVkaWFsb2cuY3BwCmluZGV4IDFj
ZmYwNDQ4ZC4uYmVhMmQ1NGU0IDEwMDY0NAotLS0gYS9zcmMvd2lkZ2V0cy9kaWFsb2dzL3FmaWxl
ZGlhbG9nLmNwcAorKysgYi9zcmMvd2lkZ2V0cy9kaWFsb2dzL3FmaWxlZGlhbG9nLmNwcApAQCAt
MjgyMiwxNiArMjgyMiwxNyBAQCB2b2lkIFFGaWxlRGlhbG9nUHJpdmF0ZTo6c2F2ZVNldHRpbmdz
KCkKIAogICAgIGlmICh1c2luZ1dpZGdldHMoKSkgewogICAgICAgICBzZXR0aW5ncy5zZXRWYWx1
ZSgic2lkZWJhcldpZHRoIiwgcUZpbGVEaWFsb2dVaS0+c3BsaXR0ZXItPnNpemVzKCkuY29uc3RG
aXJzdCgpKTsKLSAgICAgICAgc2V0dGluZ3Muc2V0VmFsdWUoInNob3J0Y3V0cyIsIFFVcmw6OnRv
U3RyaW5nTGlzdChxRmlsZURpYWxvZ1VpLT5zaWRlYmFyLT51cmxzKCkpKTsKKyAgICAgICAgc2V0
dGluZ3Muc2V0VmFsdWUoInNob3J0Y3V0cyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFFV
cmw6OnRvU3RyaW5nTGlzdChxRmlsZURpYWxvZ1VpLT5zaWRlYmFyLT51cmxzKCksIFFVcmw6OkZ1
bGx5RW5jb2RlZCkpOwogICAgICAgICBzZXR0aW5ncy5zZXRWYWx1ZSgidHJlZVZpZXdIZWFkZXIi
LCBxRmlsZURpYWxvZ1VpLT50cmVlVmlldy0+aGVhZGVyKCktPnNhdmVTdGF0ZSgpKTsKICAgICB9
CiAgICAgUVN0cmluZ0xpc3QgaGlzdG9yeVVybHM7CiAgICAgY29uc3QgUVN0cmluZ0xpc3QgaGlz
dG9yeSA9IHEtPmhpc3RvcnkoKTsKICAgICBoaXN0b3J5VXJscy5yZXNlcnZlKGhpc3Rvcnkuc2l6
ZSgpKTsKICAgICBmb3IgKGNvbnN0IFFTdHJpbmcgJnBhdGggOiBoaXN0b3J5KQotICAgICAgICBo
aXN0b3J5VXJscyA8PCBRVXJsOjpmcm9tTG9jYWxGaWxlKHBhdGgpLnRvU3RyaW5nKCk7CisgICAg
ICAgIGhpc3RvcnlVcmxzIDw8IFFVcmw6OmZyb21Mb2NhbEZpbGUocGF0aCkudG9TdHJpbmcoUVVy
bDo6RnVsbHlFbmNvZGVkKTsKICAgICBzZXR0aW5ncy5zZXRWYWx1ZSgiaGlzdG9yeSIsIGhpc3Rv
cnlVcmxzKTsKLSAgICBzZXR0aW5ncy5zZXRWYWx1ZSgibGFzdFZpc2l0ZWQiLCBsYXN0VmlzaXRl
ZERpcigpLT50b1N0cmluZygpKTsKKyAgICBzZXR0aW5ncy5zZXRWYWx1ZSgibGFzdFZpc2l0ZWQi
LCBsYXN0VmlzaXRlZERpcigpLT50b1N0cmluZyhRVXJsOjpGdWxseUVuY29kZWQpKTsKICAgICBj
b25zdCBRTWV0YUVudW0gJnZpZXdNb2RlTWV0YSA9IHEtPm1ldGFPYmplY3QoKS0+ZW51bWVyYXRv
cihxLT5tZXRhT2JqZWN0KCktPmluZGV4T2ZFbnVtZXJhdG9yKCJWaWV3TW9kZSIpKTsKICAgICBz
ZXR0aW5ncy5zZXRWYWx1ZSgidmlld01vZGUiLCBRTGF0aW4xU3RyaW5nVmlldyh2aWV3TW9kZU1l
dGEua2V5KHEtPnZpZXdNb2RlKCkpKSk7CiAgICAgc2V0dGluZ3Muc2V0VmFsdWUoInF0VmVyc2lv
biIsIFFUX1ZFUlNJT05fU1RSICIiX0wxKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>