mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-30 21:30:04 +00:00 
			
		
		
		
	Common: Correctly set ptr to null if mmap fails in memory_util
On POSIX systems mmap will return MAP_FAILED ((void*)-1) instead of a null pointer.
This commit is contained in:
		
							parent
							
								
									d1c2b76ad1
								
							
						
					
					
						commit
						cc9f352b66
					
				
					 1 changed files with 9 additions and 6 deletions
				
			
		|  | @ -51,13 +51,13 @@ void* AllocateExecutableMemory(size_t size, bool low) | ||||||
|     // printf("Mapped executable memory at %p (size %ld)\n", ptr,
 |     // printf("Mapped executable memory at %p (size %ld)\n", ptr,
 | ||||||
|     //    (unsigned long)size);
 |     //    (unsigned long)size);
 | ||||||
|      |      | ||||||
| #if defined(__FreeBSD__) | #ifdef _WIN32 | ||||||
|  |     if (ptr == nullptr) | ||||||
|  |     { | ||||||
|  | #else | ||||||
|     if (ptr == MAP_FAILED) |     if (ptr == MAP_FAILED) | ||||||
|     { |     { | ||||||
|         ptr = NULL; |         ptr = nullptr; | ||||||
| #else |  | ||||||
|     if (ptr == NULL) |  | ||||||
|     { |  | ||||||
| #endif  | #endif  | ||||||
|         PanicAlert("Failed to allocate executable memory"); |         PanicAlert("Failed to allocate executable memory"); | ||||||
|     } |     } | ||||||
|  | @ -88,6 +88,9 @@ void* AllocateMemoryPages(size_t size) | ||||||
| #else | #else | ||||||
|     void* ptr = mmap(0, size, PROT_READ | PROT_WRITE, |     void* ptr = mmap(0, size, PROT_READ | PROT_WRITE, | ||||||
|             MAP_ANON | MAP_PRIVATE, -1, 0); |             MAP_ANON | MAP_PRIVATE, -1, 0); | ||||||
|  | 
 | ||||||
|  |     if (ptr == MAP_FAILED) | ||||||
|  |         ptr = nullptr; | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|     // printf("Mapped memory at %p (size %ld)\n", ptr,
 |     // printf("Mapped memory at %p (size %ld)\n", ptr,
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue