That's very odd. Presumably a program can only cause that error message
by calling XGetImage, and freecell (like every other of these games
except taipei) can only do so from line 819 of xwin.c in build_image.
However, the only non-constant arguments to XGetImage are display and
window, and if one of those variables has an invalid value, I would
expect an error long before reaching that point. Looking at the sources,
the only obvious difference between freecell and everything else is that
freecell defaults to a window that is 640 pixels wide and 480 pixels
high, and I can just about imagine that some piece of code might treat
a window with those exact dimensions specially. That should be easy to
test; if "ace-freecell -width 700 -height 500" works when it would fail
without those arguments, and if the other games fail if you start them
with "-width 640 -height 480" then it's pretty clear this is the cause.