mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-30 21:30:04 +00:00 
			
		
		
		
	Merge pull request #3921 from B3n30/fixGetStartupArgument
Fix parameter_size in APT::GetStartupArgument
This commit is contained in:
		
						commit
						edcea90948
					
				
					 1 changed files with 8 additions and 6 deletions
				
			
		|  | @ -620,12 +620,14 @@ void Module::Interface::GetStartupArgument(Kernel::HLERequestContext& ctx) { | ||||||
|     u32 parameter_size = rp.Pop<u32>(); |     u32 parameter_size = rp.Pop<u32>(); | ||||||
|     StartupArgumentType startup_argument_type = static_cast<StartupArgumentType>(rp.Pop<u8>()); |     StartupArgumentType startup_argument_type = static_cast<StartupArgumentType>(rp.Pop<u8>()); | ||||||
| 
 | 
 | ||||||
|     if (parameter_size >= 0x300) { |     const u32 max_parameter_size{0x1000}; | ||||||
|         LOG_ERROR( | 
 | ||||||
|             Service_APT, |     if (parameter_size > max_parameter_size) { | ||||||
|             "Parameter size is outside the valid range (capped to 0x300): parameter_size={:#010X}", |         LOG_ERROR(Service_APT, | ||||||
|             parameter_size); |                   "Parameter size is outside the valid range (capped to {:#010X}): " | ||||||
|         return; |                   "parameter_size={:#010X}", | ||||||
|  |                   max_parameter_size, parameter_size); | ||||||
|  |         parameter_size = max_parameter_size; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     std::vector<u8> parameter(parameter_size, 0); |     std::vector<u8> parameter(parameter_size, 0); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue