mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 21:51:50 +00:00 
			
		
		
		
	 ade57d0485
			
		
	
	
		ade57d0485
		
	
	
	
	
		
			
			array subscripts. Using chars are dangerous b/c they are signed on some platforms and unsigned on others.
		
			
				
	
	
		
			26 lines
		
	
	
	
		
			562 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
	
		
			562 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* Cross platform case insensitive string compare functions
 | |
|  */
 | |
| 
 | |
| #include "Python.h"
 | |
| 
 | |
| int
 | |
| PyOS_mystrnicmp(const char *s1, const char *s2, Py_ssize_t size)
 | |
| {
 | |
| 	if (size == 0)
 | |
| 		return 0;
 | |
| 	while ((--size > 0) &&
 | |
| 	       (tolower((unsigned)*s1) == tolower((unsigned)*s2))) {
 | |
| 		if (!*s1++ || !*s2++)
 | |
| 			break;
 | |
| 	}
 | |
| 	return tolower((unsigned)*s1) - tolower((unsigned)*s2);
 | |
| }
 | |
| 
 | |
| int
 | |
| PyOS_mystricmp(const char *s1, const char *s2)
 | |
| {
 | |
| 	while (*s1 && (tolower((unsigned)*s1++) == tolower((unsigned)*s2++))) {
 | |
| 		;
 | |
| 	}
 | |
| 	return (tolower((unsigned)*s1) - tolower((unsigned)*s2));
 | |
| }
 |