Changeset 2877 for trunk/src/kmk


Ignore:
Timestamp:
Sep 5, 2016, 5:05:10 PM (9 years ago)
Author:
bird
Message:

updates

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kmk/kmkbuiltin/kSubmit.c

    r2876 r2877  
    11321132
    11331133
     1134/** The environment variable compare function.
     1135 * We must use case insensitive compare on windows (Path vs PATH).  */
     1136#ifdef KBUILD_OS_WINDOWS
     1137# define KSUBMIT_ENV_NCMP   _strnicmp
     1138#else
     1139# define KSUBMIT_ENV_NCMP   strncmp
     1140#endif
     1141
    11341142
    11351143/**
     
    11541162        unsigned iEnvVar;
    11551163        unsigned cEnvVars = *pcEnvVars;
    1156         size_t const cchVar = pszValue - pszEqual;
     1164        size_t const cchVar = pszEqual - pszValue;
    11571165        for (iEnvVar = 0; iEnvVar < cEnvVars; iEnvVar++)
    1158             if (   strncmp(papszEnv[iEnvVar], pszValue, cchVar) == 0
    1159                 && papszEnv[iEnvVar][cchVar] == '=')
     1166        {
     1167            char *pszCur = papszEnv[iEnvVar];
     1168            if (   KSUBMIT_ENV_NCMP(pszCur, pszValue, cchVar) == 0
     1169                && pszCur[cchVar] == '=')
    11601170            {
    11611171                if (cVerbosity > 0)
     
    11651175                break;
    11661176            }
     1177        }
    11671178        if (iEnvVar == cEnvVars)
    11681179        {
     
    11831194            /* Check for duplicates. */
    11841195            for (iEnvVar++; iEnvVar < cEnvVars; iEnvVar++)
    1185                 if (   strncmp(papszEnv[iEnvVar], pszValue, cchVar) == 0
     1196                if (   KSUBMIT_ENV_NCMP(papszEnv[iEnvVar], pszValue, cchVar) == 0
    11861197                    && papszEnv[iEnvVar][cchVar] == '=')
    11871198                {
     
    12241235
    12251236        for (iEnvVar = 0; iEnvVar < cEnvVars; iEnvVar++)
    1226             if (   strncmp(papszEnv[iEnvVar], pszVarToRemove, cchVar) == 0
     1237            if (   KSUBMIT_ENV_NCMP(papszEnv[iEnvVar], pszVarToRemove, cchVar) == 0
    12271238                && papszEnv[iEnvVar][cchVar] == '=')
    12281239            {
Note: See TracChangeset for help on using the changeset viewer.