Bug 44827 - TypeError: Rect.SetHeight(): argument 1 has unexpected type 'float'
Summary: TypeError: Rect.SetHeight(): argument 1 has unexpected type 'float'
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: python3-module-wx (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Fr. Br. George
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-06 21:03 MSK by Anton Zhukharev
Modified: 2023-01-14 15:46 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Zhukharev 2023-01-06 21:03:47 MSK
Ошибка внутри модуля wx.lib.agw.aui.

Выглядит следующим образом:
--------------------------------------------------------------------------------
Python 3.10.8 (main, Dec 17 2022, 11:34:59) [GCC 12.1.1 20220518 (ALT Sisyphus 12.1.1-alt2)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx, wx.lib.agw.aui as aui
20:57:41: Warning: Mismatch between the program and library build versions detected.
The library used 3.0 (wchar_t,compiler with C++ ABI 1016,wx containers,compatible with 2.6,compatible with 2.8),
and wxPython used 3.0 (wchar_t,compiler with C++ ABI 1017,wx containers,compatible with 2.6,compatible with 2.8).
>>> app = wx.App()
>>> wnd = wx.Frame(None)
>>> panel = wx.Panel(wnd)
>>> notebook = aui.AuiNotebook(panel)
>>> notebook.AddPage(wx.Panel(wnd), "Test")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 3575, in AddPage
    return self.InsertPage(self.GetPageCount(), page, caption, select, bitmap, disabled_bitmap, control, tooltip)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 3653, in InsertPage
    self.SetSelectionToWindow(page)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 4410, in SetSelectionToWindow
    self.SetSelection(idx)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 4357, in SetSelection
    ctrl.MakeTabVisible(ctrl_idx, ctrl)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 1843, in MakeTabVisible
    if not self.IsTabVisible(tabPage, self.GetTabOffset(), dc, win):
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 1732, in IsTabVisible
    self.Render(dc, wnd)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 1687, in Render
    page.rect, tab_button.rect, x_extent = self._art.DrawTab(dc, wnd, page, rect, tab_button.cur_state)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/tabart.py", line 475, in DrawTab
    r.SetHeight(r.GetHeight()/2)
TypeError: Rect.SetHeight(): argument 1 has unexpected type 'float'
--------------------------------------------------------------------------------

Сущностям модуля ни одного числа не было передано, однако он упал из-за неожиданного значения типа float.

Если потом запустить главный цикл событий, то ошибка будет сыпаться постоянно при изменении размеров окна и в нём ничего отображаться не будет:
--------------------------------------------------------------------------------
app.MainLoop()
Traceback (most recent call last):
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 2006, in OnPaint
    self.Render(dc, self)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/auibook.py", line 1687, in Render
    page.rect, tab_button.rect, x_extent = self._art.DrawTab(dc, wnd, page, rect, tab_button.cur_state)
  File "/usr/lib64/python3/site-packages/wx/lib/agw/aui/tabart.py", line 475, in DrawTab
    r.SetHeight(r.GetHeight()/2)
TypeError: Rect.SetHeight(): argument 1 has unexpected type 'float'
--------------------------------------------------------------------------------

Огромная просьба починить (возможно поможет обновление до пакета до текущей версии в апстриме - 4.2.0).
Comment 1 Grigory Ustinov 2023-01-14 15:46:42 MSK
+* Sat Jan 14 2023 Grigory Ustinov <grenka@altlinux.org> 4.2.0-alt1
+- Build new version (Closes: #44826 and #44827).

Вот так автозакрывать баги не надо.