Мдя. Как-то очень грустно выглядит. Я думал, есть более красивые методы.
Раз методов нет, значит придётся использовать xinit.


waitforserver(void)
{
        int     ncycles  = 120;         /* # of cycles to wait */
        int     cycles;                 /* Wait cycle count */

        for (cycles = 0; cycles < ncycles; cycles++) {
                if ((xd = XOpenDisplay(displayNum))) {
                        return(TRUE);
                }
                else {
#define MSG "X server to begin accepting connections"
                    if (!processTimeout (1, MSG))
                      break;
#undef MSG
                }
        }

        fprintf (stderr, "giving up.\r\n");
        return(FALSE);
}



В Чтв, 24/12/2009 в 21:07 +0300, Stanislav Maslovski пишет:
> On Thu, Dec 24, 2009 at 08:21:45PM +0300, George Shuklin wrote:
> 
> > Если я запускаю X'ы напрямую из скрипта (например, командой X), то
> > как узнать, когда X'ы готовы начинать принимать соединения от
> > приложений?
> 
> Зачем изобретать велосипед? Есть xinit, который делает как раз то, что
> тебе нужно. Как он это делает видно из исходников. 
> 
> -- 
> Stanislav
> 
> 

Ответить