[MacPorts] #50873: Dia canvas has incoherent colors in Quartz

MacPorts noreply at macports.org
Sat Mar 12 11:41:46 PST 2016


#50873: Dia canvas has incoherent colors in Quartz
-----------------------+----------------------
  Reporter:  m.rick@…  |      Owner:  devans@…
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:  2.3.4
Resolution:            |   Keywords:
      Port:  dia       |
-----------------------+----------------------
Changes (by devans@…):

 * owner:  macports-tickets@… => devans@…
 * cc: devans@… (removed)
 * status:  new => assigned


Comment:

 Yes, I can reproduce this issue.

 Dia was originally an X11 only app but now will build with gtk2 +quartz as
 all the X11 specific gtk/gdk code has been removed in the current version.
 So in principle, it should work with a +quartz build but at least one
 upstream developer has admitted that there are still issues with +quartz
 builds.

 In this case, the clue to what's going on is in the following console
 messages that are displayed repeatedly
 {{{
 (dia:67675): Gdk-CRITICAL **: gdk_colormap_alloc_colors: assertion
 'GDK_IS_COLORMAP (colormap)' failed
 ** (dia:67675): WARNING **: color_convert failed.
 }}}

 Dia implements it's own definition of what a color is, but these colors
 need to be converted to
 GdkColors to display properly.  color_convert() performs this conversion
 but fails on +quartz builds resulting in
 resulting in the problem described.  The actual failure is in the gdk
 function gdk_colormap_alloc_colors() which
 attempts to allocate a new color in the default visual's colormap.  The
 error says that the colormap passed to
 this function is not a valid colormap of type GdkColormap.  It then
 returns with no color allocated.  Hence the
 problem.

 This function is implemented in a backend specific ways for X11, Quartz
 and Windows so should theoretically work
 on all backends.

 I also see errors of the type
 {{{
 (dia:67675): Gdk-WARNING **: Source with depth 1 unsupported
 }}}

 so it may be that the code that initially creates the colormap is using an
 invalid/unsupported visual type.  But this is just a quess.

 As I have time available, I'll try to pinpoint the root cause and report
 it upstream.  In the meantime, you're probably better off using the X11
 build.

 Sorry for not having a better answer right now.

-- 
Ticket URL: <https://trac.macports.org/ticket/50873#comment:1>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list