Bug getting transparent color

It does not seem to behave as you said (with root master):

void mott()
{
  for (size_t i = 0; i < 10; ++i)
    {
      auto color = TColor::GetColor (0.0f, 0.0f, 0.0f);
      auto color_transparent = TColor::GetColorTransparent (color, 0.0f);
      auto free_color_idx    = TColor::GetFreeColorIndex ();

      std::cout << "color = " << color << " color_transparent = " << color_transparent
                << " free_color_idx = " << free_color_idx << std::endl;
    }
}

gives:

root [0] .x mott.C
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
color = 1 color_transparent = 1179 free_color_idx = 1180
root [1] 

Your ROOT version is old. I remember having fixed something like that.