aboutsummaryrefslogtreecommitdiff
path: root/libXt/src/Initialize.c
diff options
context:
space:
mode:
Diffstat (limited to 'libXt/src/Initialize.c')
-rw-r--r--libXt/src/Initialize.c35
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);
}