add: if (wScreenCount==1) multiHead = False;
context: main(int argc, char **argv){    int i, restart=0;    Bool multiHead = True;    char *str;    int d, s;#ifdef DEBUG    Bool doSync = False;#endif    wsetabort(wAbort);    /* for telling WPrefs what's the name of the wmaker binary being ran */    {/*	char *tmp;	tmp = getFullPath(argv[0]);*/	str = wstrappend("WMAKER_BIN_NAME=", argv[0]);/*	free(tmp);*/	putenv(str);    }    ArgCount = argc;    Arguments = argv;    WMInitializeApplication("WindowMaker", &argc, argv);    ProgName = strrchr(argv[0],'/');    if (!ProgName)      ProgName = argv[0];    else      ProgName++;    restart = 0;        memset(&wPreferences, 0, sizeof(WPreferences));        if (argc>1) {	for (i=1; i<argc; i++) {#ifdef USECPP	    if (strcmp(argv[i], "-nocpp")==0		|| strcmp(argv[i], "--no-cpp")==0) {		wPreferences.flags.nocpp=1;	    } else#endif	    if (strcmp(argv[i], "-nodock")==0		|| strcmp(argv[i], "--no-dock")==0) {		wPreferences.flags.nodock=1;	    } else if (strcmp(argv[i], "-noclip")==0		       || strcmp(argv[i], "--no-clip")==0) {		wPreferences.flags.noclip=1;	    } else if (strcmp(argv[i], "-version")==0		       || strcmp(argv[i], "--version")==0) {		printf("Window Maker %s\n", VERSION);		exit(0);	    } else if (strcmp(argv[i], "--global_defaults_path")==0) {		printf("%s/WindowMaker\n", SYSCONFDIR);		exit(0);#ifdef DEBUG            } else if (strcmp(argv[i], "--synchronous")==0) {                doSync = 1;#endif	    } else if (strcmp(argv[i], "-locale")==0		       || strcmp(argv[i], "--locale")==0) {		i++;		if (i>=argc) {		    wwarning(_("too few arguments for %s"), argv[i-1]);		    exit(0);		}		Locale = argv[i];	    } else if (strcmp(argv[i], "-display")==0) {		i++;		if (i>=argc) {		    wwarning(_("too few arguments for %s"), argv[i-1]);		    exit(0);		}		DisplayName = argv[i];	    } else if (strcmp(argv[i], "-visualid")==0		       || strcmp(argv[i], "--visual-id")==0) {		i++;		if (i>=argc) {		    wwarning(_("too few arguments for %s"), argv[i-1]);		    exit(0);		}		if (sscanf(argv[i], "%i", &wVisualID)!=1) {		    wwarning(_("bad value for visualid: \"%s\""), argv[i]);		    exit(0);		}	    } else if (strcmp(argv[i], "-static")==0		       || strcmp(argv[i], "--static")==0) {		wPreferences.flags.noupdates = 1;#ifdef XSMP_ENABLED	    } else if (strcmp(argv[i], "-clientid")==0		       || strcmp(argv[i], "-restore")==0) {		i++;		if (i>=argc) {		    wwarning(_("too few arguments for %s"), argv[i-1]);		    exit(0);		}#endif	    } else if (strcmp(argv[i], "--help")==0) {		print_help();		exit(0);	    } else {		printf(_("%s: invalid argument '%s'\n"), argv[0], argv[i]);		printf(_("Try '%s --help' for more information\n"), argv[0]);		exit(1);	    }	}    }        if (!wPreferences.flags.noupdates) {	/* check existence of Defaults DB directory */	check_defaults();    }#if 0    tmp = getenv("LANG");    if (tmp) {    	if (setlocale(LC_ALL,"") == NULL) {	    wwarning("cannot set locale %s", tmp);	    wwarning("falling back to C locale");	    setlocale(LC_ALL,"C");	    Locale = NULL;	} else {	    if (strcmp(tmp, "C")==0 || strcmp(tmp, "POSIX")==0)	      Locale = NULL;	    else	      Locale = tmp;	}    } else {	Locale = NULL;    }#endif    if (!Locale) {    	Locale = getenv("LANG");    }    setlocale(LC_ALL, Locale);    if (!Locale || strcmp(Locale, "C")==0 || strcmp(Locale, "POSIX")==0)       Locale = NULL;#ifdef I18N    if (getenv("NLSPATH"))      bindtextdomain("WindowMaker", getenv("NLSPATH"));    else      bindtextdomain("WindowMaker", LOCALEDIR);    textdomain("WindowMaker");    if (!XSupportsLocale()) {	wwarning(_("X server does not support locale"));    }    if (XSetLocaleModifiers("") == NULL) { 	wwarning(_("cannot set locale modifiers"));    }#endif    if (Locale) {	char *ptr;	Locale = wstrdup(Locale);	ptr = strchr(Locale, '.');	if (ptr)	    *ptr = 0;    }    /* open display */    dpy = XOpenDisplay(DisplayName);    if (dpy == NULL) {	wfatal(_("could not open display \"%s\""), XDisplayName(DisplayName));	exit(1);    }    if (fcntl(ConnectionNumber(dpy), F_SETFD, FD_CLOEXEC) < 0) {	wsyserror("error setting close-on-exec flag for X connection");	exit(1);    }    /* check if the user specified a complete display name (with screen).     * If so, only manage the specified screen */    if (DisplayName)	str = strchr(DisplayName, ':');    else	str = NULL;    if (str && sscanf(str, "%i.%i", &d, &s)==2)	multiHead = False;    DisplayName = XDisplayName(DisplayName);    str = wmalloc(strlen(DisplayName)+64);    sprintf(str, "DISPLAY=%s", DisplayName);    putenv(str);#ifdef DEBUG    if (doSync)        XSynchronize(dpy, True);#endif    wXModifierInitialize();#ifdef XSMP_ENABLED    wSessionConnectManager(argv, argc);#endif        StartUp(!multiHead);    execInitScript();    EventLoop();    return -1;}