VirtualBox

Changeset 2556 in kBuild for trunk/src/kmk


Ignore:
Timestamp:
Nov 30, 2011 8:44:27 PM (13 years ago)
Author:
bird
Message:

umask fixes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kmk/function.c

    r2554 r2556  
    7777  extern APIRET APIENTRY DosQueryHeaderInfo(HMODULE hmod, ULONG ulIndex, PVOID pvBuffer, ULONG cbBuffer, ULONG ulSubFunction);
    7878#endif /* CONFIG_WITH_OS2_LIBPATH */
     79
     80#ifdef KMK
     81/** Checks if the @a_cch characters (bytes) in @a a_psz equals @a a_szConst. */
     82# define STR_N_EQUALS(a_psz, a_cch, a_szConst) \
     83    ( (a_cch) == sizeof (a_szConst) - 1 && !strncmp ((a_psz), (a_szConst), sizeof (a_szConst) - 1) )
     84#endif
    7985
    8086
     
    52645270  mode_t u;
    52655271  int symbolic = 0;
    5266 
    5267   if (argv[0])
    5268     {
    5269       if (   !strcmp (argv[0], "S")
    5270           || !strcmp (argv[0], "-S")
    5271           || !strcmp (argv[0], "symbolic") )
    5272         symbolic = 1;
    5273       else
    5274         error (reading_file, _("$(%s ) invalid argument `%s'"), funcname, argv[0]);
     5272  const char *psz = argv[0];
     5273
     5274  if (psz)
     5275    {
     5276      const char *pszEnd = strchr (psz, '\0');
     5277      strip_whitespace (&psz, &pszEnd);
     5278
     5279      if (pszEnd != psz)
     5280        {
     5281          if (   STR_N_EQUALS (psz, pszEnd - pszEnd, "S")
     5282              || STR_N_EQUALS (psz, pszEnd - pszEnd, "-S")
     5283              || STR_N_EQUALS (psz, pszEnd - pszEnd, "symbolic") )
     5284            symbolic = 1;
     5285          else
     5286            error (reading_file, _("$(%s ) invalid argument `%s'"),
     5287                   funcname, argv[0]);
     5288        }
    52755289    }
    52765290
     
    53335347        {
    53345348          u <<= 3;
    5335           if (*psz >= '0' && *psz < '8')
    5336             u += *psz - '0';
    5337           else
    5338             error (reading_file, _("$(%s ) illegal number `%s'"), funcname, argv[0]);
     5349          if (*psz < '0' || *psz >= '8')
     5350            {
     5351              error (reading_file, _("$(%s ) illegal number `%s'"), funcname, argv[0]);
     5352              break;
     5353            }
     5354          u += *psz - '0';
     5355          psz++;
    53395356        }
    53405357
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette