diff options
Diffstat (limited to 'xorg-server/hw/xwin/InitOutput.c')
| -rw-r--r-- | xorg-server/hw/xwin/InitOutput.c | 79 | 
1 files changed, 38 insertions, 41 deletions
| diff --git a/xorg-server/hw/xwin/InitOutput.c b/xorg-server/hw/xwin/InitOutput.c index 7faed0170..8d5f4dbfb 100644 --- a/xorg-server/hw/xwin/InitOutput.c +++ b/xorg-server/hw/xwin/InitOutput.c @@ -48,13 +48,14 @@ from The Open Group.  #include "xkbsrv.h"  #endif  #ifdef RELOCATE_PROJECTROOT +#undef Status  #include <shlobj.h> -typedef HRESULT (*SHGETFOLDERPATHPROC)( +typedef HRESULT  (__stdcall *  SHGETFOLDERPATHPROC)(      HWND hwndOwner,      int nFolder,      HANDLE hToken,      DWORD dwFlags, -    LPTSTR pszPath +    LPSTR pszPath  );  #endif @@ -142,6 +143,7 @@ winClipboardShutdown (void)        /* Synchronously destroy the clipboard window */        if (g_hwndClipboard != NULL)  	{ +	  g_fClipboardStarted=FALSE; /* This is to avoid dead-locls caused by the clipboard thread still doing some stuff */  	  SendMessage (g_hwndClipboard, WM_DESTROY, 0, 0);  	  /* NOTE: g_hwndClipboard is set to NULL in winclipboardthread.c */  	} @@ -151,25 +153,11 @@ winClipboardShutdown (void)        /* Wait for the clipboard thread to exit */        pthread_join (g_ptClipboardProc, NULL); -      g_fClipboardLaunched = FALSE; -      g_fClipboardStarted = FALSE; -        winDebug ("winClipboardShutdown - Clipboard thread has exited.\n");      }  }  #endif -void -ddxPushProviders(void) -{ -#ifdef XWIN_GLX_WINDOWS -  if (g_fNativeGl) -    { -      /* install the native GL provider */ -      glxWinPushNativeProvider(); -    } -#endif -}  #if defined(DDXBEFORERESET)  /* @@ -195,9 +183,7 @@ ddxGiveUp (void)  {    int		i; -#if CYGDEBUG    winDebug ("ddxGiveUp\n"); -#endif    /* Perform per-screen deinitialization */    for (i = 0; i < g_iNumScreens; ++i) @@ -260,9 +246,7 @@ ddxGiveUp (void)  void  AbortDDX (void)  { -#if CYGDEBUG    winDebug ("AbortDDX\n"); -#endif    ddxGiveUp ();  } @@ -347,8 +331,10 @@ winCheckMount(void)      return;    } - if (!binary)  -   winMsg(X_WARNING, "/tmp mounted in textmode\n"); +#ifdef WINDBG +  if (!binary)  +    winDebug("/tmp mounted in textmode\n"); +#endif  }  #else  static void @@ -400,7 +386,17 @@ winFixupPaths (void)  #ifdef READ_FONTDIRS      {          /* Open fontpath configuration file */ +#if defined WIN32 && defined __MINGW32__ +        static Bool once = False; +        char buffer[MAX_PATH]; +        snprintf(buffer, sizeof(buffer), "%s\\font-dirs", basedir); +        buffer[sizeof(buffer)-1] = 0; +        FILE *fontdirs = fopen(buffer, "rt"); +        if (once) fontdirs = NULL; +        else once = True; +#else          FILE *fontdirs = fopen(ETCX11DIR "/font-dirs", "rt"); +#endif          if (fontdirs != NULL)          {              char buffer[256]; @@ -573,7 +569,7 @@ winFixupPaths (void)      }  #endif /* RELOCATE_PROJECTROOT */      if (changed_fontpath) -        winMsg (font_from, "FontPath set to \"%s\"\n", defaultFontPath); +        winDebug ("FontPath set to \"%s\"\n", defaultFontPath);  #ifdef RELOCATE_PROJECTROOT      if (getenv("XKEYSYMDB") == NULL) @@ -600,6 +596,14 @@ winFixupPaths (void)          buffer[sizeof(buffer)-1] = 0;          putenv(buffer);      } +    if (getenv("XHOSTPREFIX") == NULL) +    { +        char buffer[MAX_PATH]; +        snprintf(buffer, sizeof(buffer), "XHOSTPREFIX=%s\\X", +                basedir); +        buffer[sizeof(buffer)-1] = 0; +        putenv(buffer); +    }      if (getenv("HOME") == NULL)      {          HMODULE shfolder; @@ -626,7 +630,7 @@ winFixupPaths (void)              putenv(buffer);          } else          { -            winMsg (X_ERROR, "Can not determine HOME directory\n"); +            ErrorF ("Can not determine HOME directory\n");          }           if (shfolder != NULL)              FreeLibrary(shfolder); @@ -637,16 +641,17 @@ winFixupPaths (void)          if (size && size < sizeof(buffer))          {              snprintf(buffer + size, sizeof(buffer) - size,  -                    "XWin.%s.log", display);  +                    "VCXSrv.%s.log", display);               buffer[sizeof(buffer)-1] = 0;              g_pszLogFile = buffer; -            winMsg (X_DEFAULT, "Logfile set to \"%s\"\n", g_pszLogFile); +            GetLongPathName(buffer, buffer, MAX_PATH); +            winDebug ("Logfile set to \"%s\"\n", g_pszLogFile);          }      }      {          static char xkbbasedir[MAX_PATH]; -        snprintf(xkbbasedir, sizeof(xkbbasedir), "%s\\xkb", basedir); +        snprintf(xkbbasedir, sizeof(xkbbasedir), "%s\\xkbdata", basedir);          if (sizeof(xkbbasedir) > 0)              xkbbasedir[sizeof(xkbbasedir)-1] = 0;          XkbBaseDirectory = xkbbasedir; @@ -769,7 +774,7 @@ winUseMsg (void)    ErrorF ("-ignoreinput\n"  	  "\tIgnore keyboard and mouse input.\n"); -#ifdef XWIN_MULTIWINDOWEXTWM +#ifdef XWIN_MULTIWINDOWINTWM    ErrorF ("-internalwm\n"  	  "\tRun the internal window manager.\n");  #endif @@ -861,10 +866,8 @@ winUseMsg (void)    ErrorF ("-[no]unixkill\n"            "\tCtrl+Alt+Backspace exits the X Server.\n"); -#ifdef XWIN_GLX_WINDOWS    ErrorF ("-[no]wgl\n"  	  "\tEnable the GLX extension to use the native Windows WGL interface for accelerated OpenGL\n"); -#endif    ErrorF ("-[no]winkill\n"            "\tAlt+F4 exits the X Server.\n"); @@ -926,9 +929,7 @@ InitOutput (ScreenInfo *screenInfo, int argc, char *argv[])    /* Log the command line */    winLogCommandLine (argc, argv); -#if CYGDEBUG    winDebug ("InitOutput\n"); -#endif    /* Validate command-line arguments */    if (serverGeneration == 1 && !winValidateArgs ()) @@ -949,11 +950,8 @@ InitOutput (ScreenInfo *screenInfo, int argc, char *argv[])  #ifdef XWIN_XF86CONFIG    /* Try to read the xorg.conf-style configuration file */    if (!winReadConfigfile ()) -    winErrorFVerb (1, "InitOutput - Error reading config file\n"); +    ErrorF ("InitOutput - Error reading config file\n");  #else -  winMsg(X_INFO, "xorg.conf is not supported\n"); -  winMsg(X_INFO, "See http://x.cygwin.com/docs/faq/cygwin-x-faq.html " -         "for more information\n");    winConfigFiles ();  #endif @@ -987,7 +985,7 @@ InitOutput (ScreenInfo *screenInfo, int argc, char *argv[])  					 "_TrackMouseEvent");    if (g_fpTrackMouseEvent == NULL)      { -      winErrorFVerb (1, "InitOutput - Could not get pointer to function\n" +      ErrorF ("InitOutput - Could not get pointer to function\n"  	      "\t_TrackMouseEvent in comctl32.dll.  Try installing\n"  	      "\tInternet Explorer 3.0 or greater if you have not\n"  	      "\talready.\n"); @@ -1027,12 +1025,11 @@ InitOutput (ScreenInfo *screenInfo, int argc, char *argv[])         * Apply locale specified in LANG environment variable.         */        setlocale (LC_ALL, ""); +      }  #endif -#if CYGDEBUG || YES    winDebug ("InitOutput - Returning.\n"); -#endif  } @@ -1055,7 +1052,7 @@ winCheckDisplayNumber (void)    /* Check display range */    nDisp = atoi (display); -  if (nDisp < 0 || nDisp > 65535) +  if (nDisp < 0 || nDisp > 59535)      {        ErrorF ("winCheckDisplayNumber - Bad display number: %d\n", nDisp);        return FALSE; @@ -1102,7 +1099,7 @@ winCheckDisplayNumber (void)    if (GetLastError () == ERROR_ALREADY_EXISTS)      {        ErrorF ("winCheckDisplayNumber - " -	      PROJECT_NAME " is already running on display %d\n", +	      "VCXsrv, Xming or Cygwin/X is already running on display %d\n",  	      nDisp);        return FALSE;      } | 
