foreach_jcr(jcr) {
       bool cancel = false;
 
-      if (jcr->JobId == 0 || job_canceled(jcr)) {
+      if (jcr->JobId == 0 || job_canceled(jcr) || jcr->no_maxtime) {
          Dmsg2(800, "Skipping JCR=%p Job=%s\n", jcr, jcr->Job);
          continue;
       }
 
    mig_jcr->jr.PoolId = jcr->jr.PoolId;
    mig_jcr->jr.JobId = mig_jcr->JobId;
 
+   /* Don't let WatchDog checks Max*Time value on this Job */
+   mig_jcr->no_maxtime = true;
+
    Dmsg4(dbglevel, "mig_jcr: Name=%s JobId=%d Type=%c Level=%c\n",
       mig_jcr->jr.Name, (int)mig_jcr->jr.JobId, 
       mig_jcr->jr.JobType, mig_jcr->jr.JobLevel);
 
    bool VSS;                          /* VSS used by FD */
    bool Encrypt;                      /* Encryption used by FD */
    bool stats_enabled;                /* Keep all job records in a table for long term statistics */
+   bool no_maxtime;                   /* Don't check Max*Time for this JCR */
 #endif /* DIRECTOR_DAEMON */
 
 
 
 General:
 
 27Apr09
+ebl  Fix bug #1274 where a migration job can be canceled like the
+     original job by the MaxRunTime directive.
 mvw  Added fix for bug #1275 where acl or xattr data is saved for
      virtual filenames generated by filed plugins.
 26Apr09