(svn r3479) -Fix: fixed warnings on 64bit platforms (anyway, most 64bit platforms)
(tnx to qball and DarkVater for testing)
This commit is contained in:
		
							
								
								
									
										20
									
								
								settings.c
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								settings.c
									
									
									
									
									
								
							| @@ -491,7 +491,7 @@ static void make_manyofmany(char *buf, const char *many, uint32 x) | ||||
|  | ||||
| static const void *string_to_val(const SettingDesc *desc, const char *str) | ||||
| { | ||||
| 	uint32 val; | ||||
| 	unsigned long val; | ||||
| 	char *end; | ||||
|  | ||||
| 	switch(desc->flags & 0xF) { | ||||
| @@ -500,14 +500,14 @@ static const void *string_to_val(const SettingDesc *desc, const char *str) | ||||
| 		if (*end != 0) ShowInfoF("ini: trailing characters at end of setting '%s'", desc->name); | ||||
| 		return (void*)val; | ||||
| 	case SDT_ONEOFMANY: { | ||||
| 		int r = lookup_oneofmany((const char*)desc->b, str, -1); | ||||
| 		long r = lookup_oneofmany((const char*)desc->b, str, -1); | ||||
| 		if (r != -1) return (void*)r; | ||||
| 		ShowInfoF("ini: invalid value '%s' for '%s'", str, desc->name); | ||||
| 		return 0; | ||||
| 	} | ||||
| 	case SDT_MANYOFMANY: { | ||||
| 		uint32 r = lookup_manyofmany(desc->b, str); | ||||
| 		if (r != (uint32)-1) return (void*)r; | ||||
| 		unsigned long r = lookup_manyofmany(desc->b, str); | ||||
| 		if (r != (unsigned long)-1) return (void*)r; | ||||
| 		ShowInfoF("ini: invalid value '%s' for '%s'", str, desc->name); | ||||
| 		return 0; | ||||
| 	} | ||||
| @@ -567,15 +567,15 @@ static void load_setting_desc(IniFile *ini, const SettingDesc *desc, const void | ||||
| 			switch(desc->flags >> 4 & 7) { | ||||
| 			case SDT_INT8 >> 4: | ||||
| 			case SDT_UINT8 >> 4: | ||||
| 				*(byte*)ptr = (byte)(uint)p; | ||||
| 				*(byte*)ptr = (byte)(unsigned long)p; | ||||
| 				break; | ||||
| 			case SDT_INT16 >> 4: | ||||
| 			case SDT_UINT16 >> 4: | ||||
| 				*(uint16*)ptr = (uint16)(uint)p; | ||||
| 				*(uint16*)ptr = (uint16)(unsigned long)p; | ||||
| 				break; | ||||
| 			case SDT_INT32 >> 4: | ||||
| 			case SDT_UINT32 >> 4: | ||||
| 				*(uint32*)ptr = (uint32)p; | ||||
| 				*(uint32*)ptr = (uint32)(unsigned long)p; | ||||
| 				break; | ||||
| 			default: | ||||
| 				NOT_REACHED(); | ||||
| @@ -648,17 +648,17 @@ static void save_setting_desc(IniFile *ini, const SettingDesc *desc, const void | ||||
| 				switch(desc->flags >> 4 & 7) { | ||||
| 				case SDT_INT8 >> 4: | ||||
| 				case SDT_UINT8 >> 4: | ||||
| 					if (*(byte*)ptr == (byte)(uint)p) | ||||
| 					if (*(byte*)ptr == (byte)(unsigned long)p) | ||||
| 						continue; | ||||
| 					break; | ||||
| 				case SDT_INT16 >> 4: | ||||
| 				case SDT_UINT16 >> 4: | ||||
| 					if (*(uint16*)ptr == (uint16)(uint)p) | ||||
| 					if (*(uint16*)ptr == (uint16)(unsigned long)p) | ||||
| 						continue; | ||||
| 					break; | ||||
| 				case SDT_INT32 >> 4: | ||||
| 				case SDT_UINT32 >> 4: | ||||
| 					if (*(uint32*)ptr == (uint32)p) | ||||
| 					if (*(uint32*)ptr == (uint32)(unsigned long)p) | ||||
| 						continue; | ||||
| 					break; | ||||
| 				default: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 truelight
					truelight