summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAitor Cereceto <cereender@gmail.com>2021-03-12 08:12:43 +0100
committerAitor Cereceto <cereender@gmail.com>2021-03-12 09:27:21 +0100
commit1e820b3d9db58b6d72ad3ba227cd5e401893c72a (patch)
treeb19f0bdf385858e5f9d8e1b65315225578edf652
parent27dea9366f0ab0229bc52a39ce701a46d107020b (diff)
[46188] fix: get unix from datetime when empty dict
-rw-r--r--core/core_bind.cpp3
-rw-r--r--doc/classes/OS.xml1
2 files changed, 4 insertions, 0 deletions
diff --git a/core/core_bind.cpp b/core/core_bind.cpp
index e7a77384da..2d6b8e5666 100644
--- a/core/core_bind.cpp
+++ b/core/core_bind.cpp
@@ -373,6 +373,9 @@ Dictionary _OS::get_time(bool utc) const {
* @return epoch calculated
*/
int64_t _OS::get_unix_time_from_datetime(Dictionary datetime) const {
+ // if datetime is an empty Dictionary throws an error
+ ERR_FAIL_COND_V_MSG(datetime.is_empty(), 0, "Invalid datetime Dictionary: Dictionary is empty");
+
// Bunch of conversion constants
static const unsigned int SECONDS_PER_MINUTE = 60;
static const unsigned int MINUTES_PER_HOUR = 60;
diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml
index 057a2b8d1a..548147beab 100644
--- a/doc/classes/OS.xml
+++ b/doc/classes/OS.xml
@@ -367,6 +367,7 @@
<description>
Gets an epoch time value from a dictionary of time values.
[code]datetime[/code] must be populated with the following keys: [code]year[/code], [code]month[/code], [code]day[/code], [code]hour[/code], [code]minute[/code], [code]second[/code].
+ If the dictionary is empty [code]0[/code] is returned.
You can pass the output from [method get_datetime_from_unix_time] directly into this function. Daylight Savings Time ([code]dst[/code]), if present, is ignored.
</description>
</method>