Skip to content

randr: inherit XError in error classes#1

Merged
ehfd merged 1 commit intoselkies-project:masterfrom
fransklaver:randr-errors-inherit-xerror
May 1, 2024
Merged

randr: inherit XError in error classes#1
ehfd merged 1 commit intoselkies-project:masterfrom
fransklaver:randr-errors-inherit-xerror

Conversation

@ehfd
Copy link
Copy Markdown
Member

@ehfd ehfd commented May 1, 2024

Commit c87624d ('Add Randr error classes and register them during init') introduces three new error classes to xrandr, but makes them inherit from Exception.

Let all error classes in randr inherit from Xerror, like all other code expects.

Fixes the traceback

...
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/display.py", line 182, in sync
    self.get_pointer_control()
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/display.py", line 833, in get_pointer_control
    return request.GetPointerControl(display = self.display)
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/rq.py", line 1369, in __init__
    self.reply()
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/rq.py", line 1381, in reply
    self._display.send_and_recv(request = self._serial)
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/display.py", line 612, in send_and_recv
    gotreq = self.parse_response(request)
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/display.py", line 719, in parse_response
    gotreq = self.parse_error_response(request) or gotreq
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/display.py", line 745, in parse_error_response
    req = self.get_waiting_request(e.sequence_number)
AttributeError: 'BadRRModeError' object has no attribute 'sequence_number'

fixes python-xlib#241

Commit c87624d ('Add Randr error classes and register them during
init') introduces three new error classes to xrandr, but makes them
inherit from Exception.

Let all error classes in randr inherit from Xerror, like all other code
expects.

Fixes the traceback

```
...
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/display.py", line 182, in sync
    self.get_pointer_control()
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/display.py", line 833, in get_pointer_control
    return request.GetPointerControl(display = self.display)
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/rq.py", line 1369, in __init__
    self.reply()
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/rq.py", line 1381, in reply
    self._display.send_and_recv(request = self._serial)
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/display.py", line 612, in send_and_recv
    gotreq = self.parse_response(request)
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/display.py", line 719, in parse_response
    gotreq = self.parse_error_response(request) or gotreq
  File "/tmp/python-env/lib/python3.8/site-packages/Xlib/protocol/display.py", line 745, in parse_error_response
    req = self.get_waiting_request(e.sequence_number)
AttributeError: 'BadRRModeError' object has no attribute 'sequence_number'
```

fixes python-xlib#241
@ehfd ehfd merged commit 1f68858 into selkies-project:master May 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0.32 throws AttributeError: 'BadRRModeError' object has no attribute 'sequence_number'

2 participants