This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Non-crashing launcher app for cygwin


Here is a non-crashing version of the dos-path launcher app for use
with ported Unix applications that call external viewers:

===================================================================
#include <windows.h>

#ifdef __CYGWIN32__
#undef WINAPI
#define WINAPI STDCALL
#endif

char *my_strstr(char *, char *);

int
WINAPI WinMain (HINSTANCE hInst, HINSTANCE hprev,
			LPSTR lpCmd, int nCmd)
{
  char *last_slash = lpCmd;
  for(;;)
   if ((last_slash = my_strstr(last_slash, "/")) != (char *)NULL)
    last_slash[0] = '\\';
   else break;
  return WinExec(lpCmd, nCmd);
}

char *my_strstr(char *object, char *subject)
{
/* Done in an attempt to free the application from cygwin.dll: */
  if ((object == (char *)NULL) || (subject == (char *)NULL))
   return (char *)NULL;
  while (*subject != *object)
   if (*object == '\0')
    return (char *)NULL;
   else object++;
  return (char *)object;
}


-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]