scottkirkwood / key-mon

Automatically exported from code.google.com/p/key-mon
Apache License 2.0
141 stars 38 forks source link

Interrupting key-mon with Ctrl+C prints an SVG in the console #80

Closed aleb closed 2 years ago

aleb commented 7 years ago

The error looks like this:

lazy_pixbuf_creator.py [131]: ERROR Unable to read '/tmp/keymon-cWC5JX.svg': <?xml version="1.0" encoding="UTF-8" standalone="no"?>
[... many lines]

I added some print lines to figure out what's happening and it turns out gtk.gdk.pixbuf_new_from_file can raise KeyboardInterrupt when Ctrl+C:

Traceback (most recent call last):
  File "/home/aleb/dev/key-mon/src/keymon/key_mon.py", line 487, in on_idle
    self.handle_event(event)
  File "/home/aleb/dev/key-mon/src/keymon/key_mon.py", line 510, in handle_event
    self.handle_key(code_num, event.code, event.value)
  File "/home/aleb/dev/key-mon/src/keymon/key_mon.py", line 643, in handle_key
    self._handle_event(self.key_image, code, value)
  File "/home/aleb/dev/key-mon/src/keymon/key_mon.py", line 579, in _handle_event
    image.switch_to(name)
  File "/home/aleb/dev/key-mon/src/keymon/two_state_image.py", line 88, in switch_to
    self._switch_to(name)
  File "/home/aleb/dev/key-mon/src/keymon/two_state_image.py", line 92, in _switch_to
    self.set_from_pixbuf(self.pixbufs.get(name))
  File "/home/aleb/dev/key-mon/src/keymon/lazy_pixbuf_creator.py", line 65, in get
    name = self.create_pixbuf(name)
  File "/home/aleb/dev/key-mon/src/keymon/lazy_pixbuf_creator.py", line 86, in create_pixbuf
    img = self._composite(img, self._read_from_bytes(image_bytes))
  File "/home/aleb/dev/key-mon/src/keymon/lazy_pixbuf_creator.py", line 133, in _read_from_bytes
    ...
ahangarha commented 4 years ago

I don't see it!