[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#486330: just saw this now



On Tue, Aug 04, 2009 at 06:06:23PM +0200, Josip Rodin wrote:
> > (EE) Error compiling keymap (server-0)
> > (EE) XKB: Couldn't compile keymap
> 
> Oh, ffs, I figured it out. The machine had no free space (for users) on
> the root partition, more exactly the partition holding /var/tmp, and yet
> these XKB tools didn't seem to think that the inability to write files
> was a useful thing to report. Let's go with the generic error message
> instead, yay. >:<

Part of the culprit is in xorg-server-*/xkb/ddxLoad.c function
XkbDDXCompileKeymapByNames() where our code path says:

    out= Popen(buf,"w");
    if (out!=NULL) {
        XkbWriteXKBKeymapForNames(out,names,NULL,xkb,want,need);
        if (fclose(out)==0 && System(buf) >= 0)
        {
		...
        else
            LogMessage(X_ERROR, "Error compiling keymap (%s)\n", keymap);
    }
    else {
        LogMessage(X_ERROR, "XKB: Could not invoke xkbcomp\n");
    } 

The inner error message needs to say that it was invoking xkbcomp as well,
also how it was doing it (include 'buf'), and obviously also it should
record the actual exit code from System(buf) and include that as well.

This code is the same in 1.4.2 (lenny) and 1.6.3 (current sid).

-- 
     2. That which causes joy or happiness.



Reply to: