diff options
| -rw-r--r-- | core/core_bind.cpp | 12 | ||||
| -rw-r--r-- | core/core_bind.h | 4 | ||||
| -rw-r--r-- | doc/classes/OS.xml | 4 | 
3 files changed, 14 insertions, 6 deletions
diff --git a/core/core_bind.cpp b/core/core_bind.cpp index 8a6d048909..0da6680a7b 100644 --- a/core/core_bind.cpp +++ b/core/core_bind.cpp @@ -519,11 +519,19 @@ double _OS::get_unix_time() const {  	return OS::get_singleton()->get_unix_time();  } -void _OS::delay_usec(uint32_t p_usec) const { +/** This method uses a signed argument for better error reporting as it's used from the scripting API. */ +void _OS::delay_usec(int p_usec) const { +	ERR_FAIL_COND_MSG( +			p_usec < 0, +			vformat("Can't sleep for %d microseconds. The delay provided must be greater than or equal to 0 microseconds.", p_usec));  	OS::get_singleton()->delay_usec(p_usec);  } -void _OS::delay_msec(uint32_t p_msec) const { +/** This method uses a signed argument for better error reporting as it's used from the scripting API. */ +void _OS::delay_msec(int p_msec) const { +	ERR_FAIL_COND_MSG( +			p_msec < 0, +			vformat("Can't sleep for %d milliseconds. The delay provided must be greater than or equal to 0 milliseconds.", p_msec));  	OS::get_singleton()->delay_usec(int64_t(p_msec) * 1000);  } diff --git a/core/core_bind.h b/core/core_bind.h index 435269dac5..8a4885b82b 100644 --- a/core/core_bind.h +++ b/core/core_bind.h @@ -211,8 +211,8 @@ public:  	uint64_t get_static_memory_usage() const;  	uint64_t get_static_memory_peak_usage() const; -	void delay_usec(uint32_t p_usec) const; -	void delay_msec(uint32_t p_msec) const; +	void delay_usec(int p_usec) const; +	void delay_msec(int p_msec) const;  	uint32_t get_ticks_msec() const;  	uint64_t get_ticks_usec() const; diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml index ffcd0d4c98..f6602d5f4d 100644 --- a/doc/classes/OS.xml +++ b/doc/classes/OS.xml @@ -54,7 +54,7 @@  			<argument index="0" name="msec" type="int">  			</argument>  			<description> -				Delay execution of the current thread by [code]msec[/code] milliseconds. +				Delay execution of the current thread by [code]msec[/code] milliseconds. [code]usec[/code] must be greater than or equal to [code]0[/code]. Otherwise, [method delay_msec] will do nothing and will print an error message.  			</description>  		</method>  		<method name="delay_usec" qualifiers="const"> @@ -63,7 +63,7 @@  			<argument index="0" name="usec" type="int">  			</argument>  			<description> -				Delay execution of the current thread by [code]usec[/code] microseconds. +				Delay execution of the current thread by [code]usec[/code] microseconds. [code]usec[/code] must be greater than or equal to [code]0[/code]. Otherwise, [method delay_usec] will do nothing and will print an error message.  			</description>  		</method>  		<method name="dump_memory_to_file">  |