Changeset 2556 in kBuild for trunk/src/kmk
- Timestamp:
- Nov 30, 2011 8:44:27 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kmk/function.c
r2554 r2556 77 77 extern APIRET APIENTRY DosQueryHeaderInfo(HMODULE hmod, ULONG ulIndex, PVOID pvBuffer, ULONG cbBuffer, ULONG ulSubFunction); 78 78 #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 79 85 80 86 … … 5264 5270 mode_t u; 5265 5271 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 } 5275 5289 } 5276 5290 … … 5333 5347 { 5334 5348 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++; 5339 5356 } 5340 5357
Note:
See TracChangeset
for help on using the changeset viewer.