diff options
Diffstat (limited to 'libXt/src/Initialize.c')
| -rw-r--r-- | libXt/src/Initialize.c | 35 | 
1 files changed, 28 insertions, 7 deletions
| diff --git a/libXt/src/Initialize.c b/libXt/src/Initialize.c index 27e3d8441..abd82826d 100644 --- a/libXt/src/Initialize.c +++ b/libXt/src/Initialize.c @@ -199,7 +199,7 @@ void _XtInherit(void)  #endif -#if defined (WIN32) || defined(__CYGWIN__) +#if (defined (WIN32) || defined(__CYGWIN__)) && !defined(_MSC_VER)  /*   * The Symbol _XtInherit is used in two different manners.   * First it could be used as a generic function and second @@ -387,19 +387,23 @@ static void CombineAppUserDefaults(      Boolean deallocate = False;      if (!(path = getenv("XUSERFILESEARCHPATH"))) { +	char *old_path=NULL; +	char homedir[PATH_MAX]=".";  #if !defined(WIN32) || !defined(__MINGW32__) -	char *old_path; -	char homedir[PATH_MAX];  	GetRootDirName(homedir, PATH_MAX); -	if (!(old_path = getenv("XAPPLRESDIR"))) { +	if (!(old_path = getenv("XAPPLRESDIR"))) +#endif +        {  	    char *path_default = "%s/%%L/%%N%%C:%s/%%l/%%N%%C:%s/%%N%%C:%s/%%L/%%N:%s/%%l/%%N:%s/%%N";  	    if (!(path =  		  ALLOCATE_LOCAL(6*strlen(homedir) + strlen(path_default))))  		_XtAllocError(NULL);  	    sprintf( path, path_default,  		    homedir, homedir, homedir, homedir, homedir, homedir ); -	} else { -	    char *path_default = "%s/%%L/%%N%%C:%s/%%l/%%N%%C:%s/%%N%%C:%s/%%N%%C:%s/%%L/%%N:%s/%%l/%%N:%s/%%N:%s/%%N"; +	} +#if !defined(WIN32) || !defined(__MINGW32__) +        else +	{   char *path_default = "%s/%%L/%%N%%C:%s/%%l/%%N%%C:%s/%%N%%C:%s/%%N%%C:%s/%%L/%%N:%s/%%l/%%N:%s/%%N:%s/%%N";  	    if (!(path =  		  ALLOCATE_LOCAL( 6*strlen(old_path) + 2*strlen(homedir)  				 + strlen(path_default)))) @@ -407,8 +411,8 @@ static void CombineAppUserDefaults(  	    sprintf(path, path_default, old_path, old_path, old_path, homedir,  		    old_path, old_path, old_path, homedir );  	} -	deallocate = True;  #endif +	deallocate = True;      }      filename = XtResolvePathname(dpy, NULL, NULL, NULL, path, NULL, 0, NULL); @@ -424,20 +428,28 @@ static void CombineUserDefaults(      Display *dpy,      XrmDatabase *pdb)  { +#ifdef _MSC_VER +    char *slashDotXdefaults = ".Xdefaults"; +#else  #ifdef __MINGW32__      char *slashDotXdefaults = "/Xdefaults";  #else      char *slashDotXdefaults = "/.Xdefaults";  #endif +#endif      char *dpy_defaults = XResourceManagerString(dpy);      if (dpy_defaults) {  	XrmCombineDatabase(XrmGetStringDatabase(dpy_defaults), pdb, False);      } else {  	char filename[PATH_MAX]; +#ifndef _MSC_VER  	(void) GetRootDirName(filename,  			PATH_MAX - strlen (slashDotXdefaults) - 1);  	(void) strcat(filename, slashDotXdefaults); +#else +	strcpy(filename, slashDotXdefaults); +#endif  	(void)XrmCombineFileDatabase(filename, pdb, False);      }  } @@ -566,15 +578,24 @@ XrmDatabase XtScreenDatabase(  	if (!(filename = getenv("XENVIRONMENT"))) {  	    int len; +#ifdef _MSC_VER +	    char *slashDotXdefaultsDash = "Xdefaults-"; +#else  #ifdef __MINGW32__  	    char *slashDotXdefaultsDash = "/Xdefaults-";  #else  	    char *slashDotXdefaultsDash = "/.Xdefaults-";  #endif +#endif +#ifndef _MSC_VER  	    (void) GetRootDirName(filename = filenamebuf,  			PATH_MAX - strlen (slashDotXdefaultsDash) - 1);  	    (void) strcat(filename, slashDotXdefaultsDash); +#else +            filename = filenamebuf; +	    strcpy(filename, slashDotXdefaultsDash); +#endif  	    len = strlen(filename);  	    GetHostname (filename+len, PATH_MAX-len);  	} | 
