#132 Black display on non-8/15/16/24/32-bit visuals

Visual (35)

Works fine without -a parameter in 256 colors.
But if you try -a 16 or -a 24 always appear a black
rdesktop client window.
IRIX 6.5.21
rdesktop 1.3.1
compiled on origin200 for irix 6.4 and indigo for 6.2.
with any warning.


  • Void Foo

    Void Foo - 2005-08-07

    Logged In: YES

    same here when rdesktop try to use a visual with higher than
    24bit color depth.

  • Ilya Konstantinov

    • labels: --> Visual
    • priority: 5 --> 7
    • assigned_to: nobody --> ikonst
    • summary: No more than 256 colors in IRIX --> Black display on non-8/15/16/24/32-bit visuals
  • Ilya Konstantinov

    Logged In: YES

    On IRIX, the visual with the highest depth is a 30-plane
    one, having 10 bits for each color (higher color fidelity
    than most PCs and not something useful to rdesktop anyway).
    rdesktop prefers the highest-depth visual, even when lower
    is enough (at until patch 1334905 is checked in).
    Apparently, xwin.c translate_image() contains no
    implementation for anything but 8, 15, 16, 24 and 32-planes
    visuals, so quite simply, nothing ever gets drawn -- thus
    black screen.

    The first solution shall be to refuse to accept anything but
    the visuals we support. Since such machines typically offer
    24-bit visuals as well, this should be harmless and would
    even ensure better performance. Also, we'll have to ensure
    we only accept visuals with supported per-color masks
    (translate_image has hardcoded shifts!), or otherwise modify
    translate_image to support custom color masks (e.g. 3 bits
    for green, 3 bits for blue, 18 bits for red -- not like this
    would appear in real world, so it's not criticial).

  • Ilya Konstantinov

    Logged In: YES

    In fact, our order of preference should be:
    1. If the RDP server's depth is above 8bpp --> a visual with
    the same bpp.
    2. A visual with 24bpp.
    3. Any other visual *we can handle* (i.e. have a matching
    translate_image function for it).

    Implementing this policy would also unintentionally solve
    bug #1341223 since we'll be avoiding the dreaded 32bpp
    visual in all relevant cases (i.e. on NVidia'a driver).

  • Ilya Konstantinov

    • status: open --> closed-fixed
  • Ilya Konstantinov

    Logged In: YES

    Fixed by patch #1390148.