diff --git a/Makefile b/Makefile
index adf4eb2229962d3b70e2b4fd00190acad7154af5..f19906cda73e5cf6195e6440abc54438b661964e 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@ BASE=rules_shipping
 BASE_ADV=rules_shipping_advanced
 PLUGINTYPE=vmshipment
 ZIPBASE=opentools_vm2
-VERSION=3.0.0
+VERSION=3.0.1
 
 PLUGINFILES=$(BASE).php $(BASE)_base.php $(BASE).script.php $(BASE).xml index.html
 PLUGINFILES_ADV=$(BASE_ADV).php $(BASE)_base.php $(BASE_ADV).script.php $(BASE_ADV).xml index.html
diff --git a/releases/plg_opentools_vm2_rules_shipping_advanced_v3.0.1.zip b/releases/plg_opentools_vm2_rules_shipping_advanced_v3.0.1.zip
new file mode 100644
index 0000000000000000000000000000000000000000..39ec21a860f05df43e676c086fd2a0f244141c0b
Binary files /dev/null and b/releases/plg_opentools_vm2_rules_shipping_advanced_v3.0.1.zip differ
diff --git a/releases/plg_opentools_vm2_rules_shipping_v3.0.1.zip b/releases/plg_opentools_vm2_rules_shipping_v3.0.1.zip
new file mode 100644
index 0000000000000000000000000000000000000000..3eef15285a36b0b117f3649a10db6a5346752498
Binary files /dev/null and b/releases/plg_opentools_vm2_rules_shipping_v3.0.1.zip differ
diff --git a/rules_shipping.xml b/rules_shipping.xml
index 173b8a59694065edc347701964829bddec1c9f01..2c1fb8a39bb0e23c2330a24ba4bcbf24c2a5b751 100644
--- a/rules_shipping.xml
+++ b/rules_shipping.xml
@@ -6,7 +6,7 @@
     <authorUrl>http://www.open-tools.net</authorUrl>
     <copyright>Copyright (C) 2013, Reinhold Kainhofer</copyright>
     <license>GPL v3+</license>
-    <version>3.0.0</version>
+    <version>3.0.1</version>
     <description>VMSHIPMENT_RULES_DESC</description>
     <files>
 	<filename plugin="rules_shipping">rules_shipping.php</filename>
diff --git a/rules_shipping_advanced.php b/rules_shipping_advanced.php
index c95e74a1e8bfb33d9692a462d02e23f48829ddc0..deb537ec28685904668a9877c084dab6f0835563 100644
--- a/rules_shipping_advanced.php
+++ b/rules_shipping_advanced.php
@@ -68,7 +68,7 @@ class plgVmShipmentRules_Shipping_Advanced extends plgVmShipmentRules_Shipping_B
 
 		// Postal code Check for UK postal codes: Use regexp to determine if ZIP structure matches and also to extract the parts.
 		// Also handle UK overseas areas/islands that use four-letter outward codes rather than "A{1,2}0{1,2}A{0,1} 0AA"
-		if ($zip and preg_match('/^\s*(([A-Za-z]{1,2})(\d{1,2})([A-Za-z]?)|[A-Za-z]{4})\s*(\d[A-Za-z]{2})\s*$/', $zip, $match)) {
+		if (defined($zip) and preg_match('/^\s*(([A-Za-z]{1,2})(\d{1,2})([A-Za-z]?)|[A-Za-z]{4})\s*(\d[A-Za-z]{2})\s*$/', $zip, $match)) {
 			$values['uk_outward'] = $match[1];
 			$values['uk_area'] = $match[2];
 			$values['uk_district'] = $match[3];
@@ -82,7 +82,7 @@ class plgVmShipmentRules_Shipping_Advanced extends plgVmShipmentRules_Shipping_B
 			$values['uk_inward'] = NULL;
 		}
 		// Postal code Check for Canadian postal codes: Use regexp to determine if ZIP structure matches and also to extract the parts.
-		if ($zip and preg_match('/^\s*(([A-Za-z])(\d)([A-Za-z]))\s*(\d[A-Za-z]\d)\s*$/', $zip, $match)) {
+		if (defined($zip) and preg_match('/^\s*(([A-Za-z])(\d)([A-Za-z]))\s*(\d[A-Za-z]\d)\s*$/', $zip, $match)) {
 			$values['canada_fsa'] = $match[1];
 			$values['canada_area'] = $match[2];
 			$values['canada_urban'] = $match[3];
diff --git a/rules_shipping_advanced.xml b/rules_shipping_advanced.xml
index 590dd483daef3427cfdc97333e70242e418d09e5..723f54911e5d0e2e98f2306957048ad6a066a32e 100644
--- a/rules_shipping_advanced.xml
+++ b/rules_shipping_advanced.xml
@@ -6,7 +6,7 @@
     <authorUrl>http://www.open-tools.net</authorUrl>
     <copyright>Copyright (C) 2013, Reinhold Kainhofer</copyright>
     <license>GPL v3+</license>
-    <version>3.0.0</version>
+    <version>3.0.1</version>
     <description>VMSHIPMENT_RULES_ADV_DESC</description>
     <files>
 	<filename plugin="rules_shipping_advanced">rules_shipping_advanced.php</filename>
diff --git a/rules_shipping_base.php b/rules_shipping_base.php
index 6e72ed26c788be8776496993af88f2e1593a9325..73d4c5c9686d750040f81f0ba04492472c50658c 100644
--- a/rules_shipping_base.php
+++ b/rules_shipping_base.php
@@ -709,15 +709,16 @@ class ShippingRule {
 		$func = strtolower($function);
 		// Functions with no argument:
 		if (count($args) == 0) {
+			$dt = getdate();
 			switch ($func) {
-				case "second": return getdate()["seconds"]; break;
-				case "minute": return getdate()["minutes"]; break;
-				case "hour":   return getdate()["hours"]; break;
-				case "day":    return getdate()["mday"]; break;
-				case "weekday":return getdate()["wday"]; break;
-				case "month":  return getdate()["mon"]; break;
-				case "year":   return getdate()["year"]; break;
-				case "yearday":return getdate()["yday"]; break;
+				case "second": return $dt['seconds']; break;
+				case "minute": return $dt['minutes']; break;
+				case "hour":   return $dt['hours']; break;
+				case "day":    return $dt['mday']; break;
+				case "weekday":return $dt['wday']; break;
+				case "month":  return $dt['mon']; break;
+				case "year":   return $dt['year']; break;
+				case "yearday":return $dt['yday']; break;
 			}
 		}
 		// Functions with exactly one argument: