Crashes in software rendering mode

Bug #956640 reported by Alexander
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Ren'Py
Fix Released
High
Tom Rothamel

Bug Description

Renpy 6.13.9 (same result for 6.13.8)

Various game display trashed images and animation/video and crash as soon as opacity comes into play.

RE: Alistair++ crashes when moving mouse over buttons in start menu:
$ RENPY_RENDERER=sw realistair
ALSA lib pcm.c:7339:(snd_pcm_recover) underrun occurred

Full traceback:
  File "/usr/share/renpy/renpy/execution.py", line 265, in run
    node.execute()
  File "/usr/share/renpy/renpy/ast.py", line 632, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide)
  File "/usr/share/renpy/renpy/python.py", line 977, in py_exec_bytecode
    exec bytecode in globals, locals
  File "C:\Users\Owner\Documents\visualnovel\inprogress\realistair/game/options.rpy", line 274, in <module>
  File "/usr/share/renpy/renpy/exports.py", line 751, in imagemap
    roll_forward=roll_forward)
  File "/usr/share/renpy/renpy/ui.py", line 237, in interact
    rv = renpy.game.interface.interact(**kwargs)
  File "/usr/share/renpy/renpy/display/core.py", line 1798, in interact
    repeat, rv = self.interact_core(preloads=preloads, **kwargs)
  File "/usr/share/renpy/renpy/display/core.py", line 2319, in interact_core
    rv = renpy.display.focus.mouse_handler(ev, x, y)
  File "/usr/share/renpy/renpy/display/focus.py", line 234, in mouse_handler
    new_focus = renpy.display.render.focus_at_point(x, y)
  File "render.pyx", line 335, in renpy.display.render.focus_at_point (gen/renpy.display.render.c:4233)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 929, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:11870)
  File "render.pyx", line 1042, in renpy.display.render.Render.is_pixel_opaque (gen/renpy.display.render.c:13637)
  File "/usr/share/renpy/renpy/display/swdraw.py", line 993, in is_pixel_opaque
    if self.is_pixel_opaque(child, x, y):
  File "/usr/share/renpy/renpy/display/swdraw.py", line 993, in is_pixel_opaque
    if self.is_pixel_opaque(child, x, y):
  File "/usr/share/renpy/renpy/display/swdraw.py", line 1001, in is_pixel_opaque
    if not child.get_masks()[3] or child.get_at((cx, cy))[3]:
TypeError: integer argument expected, got float

While running game code:
  File "C:\Users\Owner\Documents\visualnovel\inprogress\realistair/game/options.rpy", line 266, in script
  File "C:\Users\Owner\Documents\visualnovel\inprogress\realistair/game/options.rpy", line 274, in python
TypeError: integer argument expected, got float
Fatal Python error: (pygame parachute) Segmentation Fault

The same for "Don't take it personally, babe, it just ain't your story"
$ RENPY_RENDERER=sw donttakeitpersonally

Full traceback:
  File "/usr/share/renpy/renpy/execution.py", line 265, in run
    node.execute()
  File "/usr/share/renpy/renpy/ast.py", line 1413, in execute
    self.call("execute")
  File "/usr/share/renpy/renpy/ast.py", line 1426, in call
    renpy.statements.call(method, parsed, *args, **kwargs)
  File "/usr/share/renpy/renpy/statements.py", line 100, in call
    return method(parsed, *args, **kwargs)
  File "common/00statements.rpy", line 540, in execute_call_screen
    store._return = renpy.call_screen(name, **kwargs)
  File "/usr/share/renpy/renpy/exports.py", line 1460, in call_screen
    rv = renpy.ui.interact(mouse="screen", type="screen", roll_forward=roll_forward)
  File "/usr/share/renpy/renpy/ui.py", line 237, in interact
    rv = renpy.game.interface.interact(**kwargs)
  File "/usr/share/renpy/renpy/display/core.py", line 1798, in interact
    repeat, rv = self.interact_core(preloads=preloads, **kwargs)
  File "/usr/share/renpy/renpy/display/core.py", line 2319, in interact_core
    rv = renpy.display.focus.mouse_handler(ev, x, y)
  File "/usr/share/renpy/renpy/display/focus.py", line 234, in mouse_handler
    new_focus = renpy.display.render.focus_at_point(x, y)
  File "render.pyx", line 335, in renpy.display.render.focus_at_point (gen/renpy.display.render.c:4233)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 946, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:12178)
  File "render.pyx", line 929, in renpy.display.render.Render.focus_at_point (gen/renpy.display.render.c:11870)
  File "render.pyx", line 1042, in renpy.display.render.Render.is_pixel_opaque (gen/renpy.display.render.c:13637)
  File "/usr/share/renpy/renpy/display/swdraw.py", line 993, in is_pixel_opaque
    if self.is_pixel_opaque(child, x, y):
  File "/usr/share/renpy/renpy/display/swdraw.py", line 1001, in is_pixel_opaque
    if not child.get_masks()[3] or child.get_at((cx, cy))[3]:
TypeError: integer argument expected, got float

While running game code:
  File "/Users/scout/Applications/renpy/Digital 2/game/script.rpy", line 521, in script
TypeError: integer argument expected, got float
Fatal Python error: (pygame parachute) Segmentation Fault

Alexander (alexanderr)
description: updated
Revision history for this message
Patrick Dinh (patrickdinh) wrote :

From my own experience, Python 2.6 should work without crashing. The trashed images you mentioned is possibly related to GCC's code optimizations... avoid compiling the renpy modules with the -O2 or -O3 switch. Using -Os, -O1, or even -O0 has worked in my case.

Revision history for this message
Alexander (alexanderr) wrote :

Second solution - thank you, works fine. Using Python 2.6 does not make sense because Arch supports only 2 python versions and current version of python2 is 2.7.2.

Revision history for this message
Tom Rothamel (renpytom) wrote :

This is a bug in Ren'Py that will be fixed in 6.13.10, due out shortly.

Changed in renpy:
milestone: none → 6.13.10
status: New → Fix Committed
importance: Undecided → High
assignee: nobody → Tom Rothamel (renpytom)
Alexander (alexanderr)
no longer affects: archlinux
Tom Rothamel (renpytom)
Changed in renpy:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.