diff --git a/lib/enrollib.php b/lib/enrollib.php
index f04feca..b8a5f57 100644
--- a/lib/enrollib.php
+++ b/lib/enrollib.php
@@ -829,7 +829,7 @@ abstract class enrol_plugin {
         $inserted = false;
         if ($ue = $DB->get_record('user_enrolments', array('enrolid'=>$instance->id, 'userid'=>$userid))) {
             if ($ue->timestart != $timestart or $ue->timeend != $timeend) {
-                $ue->timestart    = $timestart;
+                $ue->timestart    = $timestart ? $timestart : $ue->timestart;
                 $ue->timeend      = $timeend;
                 $ue->modifier     = $USER->id;
                 $ue->timemodified = time();
@@ -840,7 +840,7 @@ abstract class enrol_plugin {
             $ue->enrolid      = $instance->id;
             $ue->status       = ENROL_USER_ACTIVE;
             $ue->userid       = $userid;
-            $ue->timestart    = $timestart;
+            $ue->timestart    = $timestart ? $timestart : time();
             $ue->timeend      = $timeend;
             $ue->modifier     = $USER->id;
             $ue->timemodified = time();
