Beispiel #1
0
int
execvp (const char *file,
	char * const argv[])
{
  char *path = getenv ("PATH");
  char buf[MAXNAMLEN];

  /* If $PATH doesn't exist, just pass FILE on unchanged.  */
  if (!path)
    return execv (file, argv);

  /* If FILE contains a directory, don't search $PATH.  */
  if (strchr (file, '/')
      )
    return execv (file, argv);

  while (*path)
    {
      strccpy (buf, path, PATH_DELIM);
      /* An empty entry means the current directory.  */
      if (*buf != 0 && buf[strlen(buf) - 1] != '/')
	strcat (buf, "/");
      strcat (buf, file);
      if (execv (buf, argv) == -1 && errno != ENOENT)
	return -1;
      while (*path && *path != PATH_DELIM)
	path++;
      if (*path == PATH_DELIM)
	path++;			/* skip over delim */
    }

  return -1;
}
Beispiel #2
0
/* ARGSUSED */
void LoadSave_Callback ( Widget w, long which, XtPointer call )
{
char	groupfile[256] = "\0";

/*--------------------------------------------------------------------*/

	switch ( which ) {

	    case 0: /* Load Group List */
		XtManageChild(model_select_toplevel);
		break;

	    case 1: /* Save Group List */

		if (MetaFile[0] != '\0') {

		(char *)strccpy(groupfile,MetaFile,'.');

		XtVaSetValues(filenameW,
			XmNvalue, groupfile,
			NULL);

		}

		XtManageChild(save_group_popup);
		break;

	}
}