Programming error at startup in Ubuntu 13.10

Bug #1230105 reported by mstfa cmly on 2013-09-25
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
mypaint (Ubuntu)
Undecided
Unassigned

Bug Description

MyPaint gives this error at startup:

A programming error has been detected.

It probably isn't fatal, but the details should be reported to the developers nonetheless.

Traceback (most recent call last):
  File "/usr/share/mypaint/gui/tileddrawwidget.py", line 161, enter_notify_cb(self=<TiledDrawWidget object at 0x1a28500 (GtkEventBox at 0x1c73b40)>, widget=<TiledDrawWidget object at 0x1a28500 (GtkEventBox at 0x1c73b40)>, event=<gtk.gdk.Event at 0x2040918: GDK_ENTER_NOTIFY x=127.00, y=96.00, mode=GDK_CROSSING_NORMAL>)
            # Ensure the cursor reflects layer-locking changes etc.
            self.renderer.update_cursor()
  variables: {'self.renderer.update_cursor': ('local', <bound method CanvasRenderer.update_cursor of <CanvasRenderer object at 0x1a28550 (GtkDrawingArea at 0x19cc2c0)>>)}
  File "/usr/share/mypaint/gui/tileddrawwidget.py", line 340, update_cursor(self=<CanvasRenderer object at 0x1a28550 (GtkDrawingArea at 0x19cc2c0)>)
                radius, style = self._get_cursor_info()
                c = cursor.get_brush_cursor(radius, style, self.app.preferences)
            window.set_cursor(c)
  variables: {'self.app.preferences': ('local', {'frame.color_rgba': [0.12, 0.12, 0.12, 0.92], 'view.high_quality_zoom': True, 'ui.feedback.scale': True, 'ui.feedback.last_pos': False, u'colors.current': u'#292929', 'brushmanager.selected_groups': [u'set#2'], 'ui.toolbar_items': {u'toolbar1_file': True, u'toolbar1_view_modes': True, u'toolbar1_subwindows': True, u'toolbar1_edit': True, u'toolbar1_blendmodes': False, u'toolbar1_view_manips': False, u'toolbar1_view_resets': True, u'toolbar1_scrap': False, u'toolbar1_linemodes': False}, 'input.button_mapping': {u'<Primary>Button1': u'ColorPickMode', u'<Primary>Button2': u'ZoomViewMode', u'<Primary><Shift>Button2': u'FrameEditMode', u'<Shift>Button1': u'StraightMode', u'<Shift>Button2': u'RotateViewMode', u'Button3': u'ShowPopupMenu', u'Button2': u'PanViewMode', u'<Shift><Alt>Button2': u'FrameEditMode', u'<Alt>Button2': u'ZoomViewMode', u'<Alt>Button1': u'ColorPickMode'}, 'view.default_zoom': 1.0, 'misc.context_restores_color': True, 'ui.parts': {u'main_toolbar': True, u'menubar': True}, 'ui.hide_toolbar_in_fullscreen': True, 'input.device_mode': u'screen', 'layout.window_positions': {'brushSelectionWindow': {u'h': 350, u'sbindex': 2, u'sbheight': 350, u'w': 250, u'y': -150, u'x': -100, u'hidden': True, u'floating': True}, 'inputTestWindow': {}, 'brushSettingsWindow': {u'y': -128, u'h': 300, u'w': 300, u'x': -460}, 'colorWindow': {u'h': 300, u'sbindex': 0, u'sbheight': 300, u'w': 250, u'y': 125, u'x': -100, u'hidden': True, u'floating': True}, 'layersWindow': {u'h': 200, u'sbindex': 3, u'sbheight': 200, u'w': 200, u'y': -150, u'x': -460, u'hidden': True, u'floating': True}, 'backgroundWindow': {}, 'preferencesWindow': {}, 'scratchWindow': {u'h': 250, u'sbindex': 4, u'sbheight': 250, u'w': 300, u'y': 125, u'x': -555, u'hidden': True, u'floating': True}, 'frameWindow': {}, 'main-window': {u'y': 32, u'h': 668, u'w': 1180, u'sbwidth': 250, u'x': 50}}, u'linemode.exit_pressure': 0.30000000000000004, 'ui.hide_subwindows_in_fullscreen': True, u'linemode.entry_pressure': 0.30000000000000004, u'colors.history': [u'#ee3333', u'#336699', u'#44aa66', u'#aa6633', u'#292929'], 'saving.scrap_prefix': u'~/MyPaint/scrap', 'ui.hide_menubar_in_fullscreen': True, 'input.global_pressure_mapping': [[0.0, 1.0], [1.0, 0.0]], 'saving.default_format': u'openraster', 'ui.feedback.symmetry': True, 'brushmanager.selected_brush': u'deevad/2B_pencil', 'scratchpad.last_opened_scratchpad': u'/home/moustafa/.mypaint/scratchpads/autosave.ora', u'devbrush.last_used': u'Wacom Intuos5 touch M Pen stylus'}), 'c': (None, []), 'style': ('local', 0), 'radius': ('local', 7.38905609893065), 'cursor.get_brush_cursor': ('global', <function get_brush_cursor at 0x19c4aa0>)}
  File "/usr/share/mypaint/gui/cursor.py", line 57, get_brush_cursor(radius=7.38905609893065, style=0, prefs={'brushmanager.selected_brush': u'deevad/2B_pencil', 'brushmanager.selected_groups': [u'set#2'], u'colors.current': u'#292929', u'colors.history': [u'#ee3333', u'#336699', u'#44aa66', u'#aa6633', u'#292929'], u'devbrush.last_used': u'Wacom Intuos5 touch M Pen stylus', 'frame.color_rgba': [0.12, 0.12, 0.12, 0.92], 'input.button_mapping': {u'<Alt>Button1': u'ColorPickMode', u'<Alt>Button2': u'ZoomViewMode', u'<Primary><Shift>Button2': u'FrameEditMode', u'<Primary>Button1': u'ColorPickMode', u'<Primary>Button2': u'ZoomViewMode', u'<Shift><Alt>Button2': u'FrameEditMode', u'<Shift>Button1': u'StraightMode', u'<Shift>Button2': u'RotateViewMode', u'Button2': u'PanViewMode', u'Button3': u'ShowPopupMenu'}, 'input.device_mode': u'screen', 'input.global_pressure_mapping': [[0.0, 1.0], [1.0, 0.0]], 'layout.window_positions': {'backgroundWindow': {}, 'brushSelectionWindow': {u'floating': True, u'h': 350, u'hidden': True, u'sbheight': 350, u'sbindex': 2, u'w': 250, u'x': -100, u'y': -150}, 'brushSettingsWindow': {u'h': 300, u'w': 300, u'x': -460, u'y': -128}, 'colorWindow': {u'floating': True, u'h': 300, u'hidden': True, u'sbheight': 300, u'sbindex': 0, u'w': 250, u'x': -100, u'y': 125}, 'frameWindow': {}, 'inputTestWindow': {}, 'layersWindow': {u'floating': True, u'h': 200, u'hidden': True, u'sbheight': 200, u'sbindex': 3, u'w': 200, u'x': -460, u'y': -150}, 'main-window': {u'h': 668, u'sbwidth': 250, u'w': 1180, u'x': 50, u'y': 32}, 'preferencesWindow': {}, 'scratchWindow': {u'floating': True, u'h': 250, u'hidden': True, u'sbheight': 250, u'sbindex': 4, u'w': 300, u'x': -555, u'y': 125}}, ...})
            hot_x = hot_y = int((d+1)/2)
            pixbuf = image_surface_to_pixbuf(surf)
            if pygtkcompat.USE_GTK3:
  variables: {'surf': ('local', <cairo.ImageSurface object at 0x7f399fdb0d70>), 'image_surface_to_pixbuf': ('global', <function image_surface_to_pixbuf at 0x19c4b18>), 'pixbuf': (None, [])}
  File "/usr/share/mypaint/gui/cursor.py", line 76, image_surface_to_pixbuf(surf=<cairo.ImageSurface object>)
        png_dp = StringIO()
        surf.write_to_png(png_dp)
        pixbuf_loader = gdk.PixbufLoader()
  variables: {'png_dp': ('local', <cStringIO.StringO object at 0x2469420>), 'surf.write_to_png': ('local', <built-in method write_to_png of cairo.ImageSurface object at 0x7f399fdb0d70>)}
IOError: error while writing to output stream

=========================

I suspect the change to Mir/XMir to be the cause, but I'm really unsure as to why these errors appear.

mstfa cmly (mstfacmly) on 2013-09-25
summary: - Programming error at startup
+ Programming error at startup in Ubuntu 13.10
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in mypaint (Ubuntu):
status: New → Confirmed
Reuben (reubenshea) wrote :

I got this error as well, however I am running XMir. After disabling XMir temporarily, the error (and several others that cropped up in the application when using a tablet) completely disappears.

Jon Nordby (jonnor) wrote :

Thank you for reporting.
Moustafa, can you confirm that running without Mir makes the problem go away?

Robert Rojas (roberthrojasq) wrote :

I got this bug too. MyPaint doesn't render the brush cursor and throws an error again when is selected a brush with a default cursor size different from the current (i.e from pencil to eraser). As the people above, it's only occurs when Mir is enabled.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers