Timers: Return an error when calling SetTimer with negative timeouts.
This commit is contained in:
		| @@ -837,6 +837,11 @@ static ResultCode SetTimer(Kernel::Handle handle, s64 initial, s64 interval) { | |||||||
|  |  | ||||||
|     LOG_TRACE(Kernel_SVC, "called timer=0x%08X", handle); |     LOG_TRACE(Kernel_SVC, "called timer=0x%08X", handle); | ||||||
|  |  | ||||||
|  |     if (initial < 0 || interval < 0) { | ||||||
|  |         return ResultCode(ErrorDescription::OutOfRange, ErrorModule::Kernel, | ||||||
|  |                           ErrorSummary::InvalidArgument, ErrorLevel::Permanent); | ||||||
|  |     } | ||||||
|  |  | ||||||
|     SharedPtr<Timer> timer = Kernel::g_handle_table.Get<Timer>(handle); |     SharedPtr<Timer> timer = Kernel::g_handle_table.Get<Timer>(handle); | ||||||
|     if (timer == nullptr) |     if (timer == nullptr) | ||||||
|         return ERR_INVALID_HANDLE; |         return ERR_INVALID_HANDLE; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user