Priority:
 ================
+
 - Why no error message if restore has no permission on the where
   directory?
 - Possibly allow manual "purge" to purge a Volume that has not
      its faster to enter the specified directory
 - Make tree walk routines like cd, ls, ... more user friendly
   by handling spaces better.
+- When doing a restore, if the user does an "update slots"
+  after the job started in order to add a restore volume, the
+   values prior to the update slots will be put into the catalog.
+   Must retrieve catalog record merge it then write it back at the
+   end of the restore job, if we want to do this right.
 === rate design
   jcr->last_rate
   jcr->last_runtime
 
--- /dev/null
+
+ This patch fixes bug #1255 'variable %n changed'
+
+ Apply it to version 2.4.4 with:
+
+ cd <bacula-source>
+ patch -p0 <2.4.4-jobname-edit.patch
+ ./configure <your options>
+ make
+ ...
+ make install
+
+
+Index: src/dird/job.c
+===================================================================
+--- src/dird/job.c     (revision 8455)
++++ src/dird/job.c     (working copy)
+@@ -787,7 +787,7 @@
+    len = strlen(dt) + 5;   /* dt + .%02d EOS */
+    bstrncpy(name, base_name, sizeof(name));
+    name[sizeof(name)-len] = 0;          /* truncate if too long */
+-   bsnprintf(jcr->Job, sizeof(jcr->Job), "%s.%s.%02d", name, dt, seq); /* add date & time */
++   bsnprintf(jcr->Job, sizeof(jcr->Job), "%s.%s_%02d", name, dt, seq); /* add date & time */
+    /* Convert spaces into underscores */
+    for (p=jcr->Job; *p; p++) {
+       if (*p == ' ') {
 
--- /dev/null
+
+ This patch fixes bug #1247 - 64-bit time_t and varargs don't get along in some
+ printf-like formatting
+
+ Apply it to version 2.4.4 with:
+
+ cd <bacula-source>
+ patch -p0 <2.4.4-time_t_64bit.patch
+ ./configure <your options>
+ make
+ ...
+ make install
+
+
+Index: src/stored/spool.c
+===================================================================
+--- src/stored/spool.c (revision 8455)
++++ src/stored/spool.c (working copy)
+@@ -306,7 +306,7 @@
+    set_new_file_parameters(dcr);
+ 
+    /* Subtracting run_time give us elapsed time - wait_time since we started despooling */
+-   time_t despool_elapsed = time(NULL) - despool_start - jcr->run_time;
++   int32_t despool_elapsed = time(NULL) - despool_start - jcr->run_time;
+ 
+    if (despool_elapsed <= 0) {
+       despool_elapsed = 1;
+Index: src/stored/append.c
+===================================================================
+--- src/stored/append.c        (revision 8455)
++++ src/stored/append.c        (working copy)
+@@ -270,7 +270,7 @@
+    do_fd_commands(jcr);               /* finish dialog with FD */
+ 
+ 
+-   time_t job_elapsed = time(NULL) - jcr->run_time;
++   int32_t job_elapsed = time(NULL) - jcr->run_time;
+ 
+    if (job_elapsed <= 0) {
+       job_elapsed = 1;
+Index: src/lib/message.c
+===================================================================
+--- src/lib/message.c  (revision 8455)
++++ src/lib/message.c  (working copy)
+@@ -780,8 +780,8 @@
+              case MD_DIRECTOR:
+                 Dmsg1(850, "DIRECTOR for following msg: %s", msg);
+                 if (jcr && jcr->dir_bsock && !jcr->dir_bsock->errors) {
+-                   bnet_fsend(jcr->dir_bsock, "Jmsg Job=%s type=%d level=%d %s",
+-                      jcr->Job, type, mtime, msg);
++                   bnet_fsend(jcr->dir_bsock, "Jmsg Job=%s type=%d level=%lld %s",
++                      jcr->Job, type, (utime_t)mtime, msg);
+                 }
+                 break;
+              case MD_STDOUT:
 
    len = strlen(dt) + 5;   /* dt + .%02d EOS */
    bstrncpy(name, base_name, sizeof(name));
    name[sizeof(name)-len] = 0;          /* truncate if too long */
-   bsnprintf(jcr->Job, sizeof(jcr->Job), "%s.%s.%02d", name, dt, seq); /* add date & time */
+   bsnprintf(jcr->Job, sizeof(jcr->Job), "%s.%s_%02d", name, dt, seq); /* add date & time */
    /* Convert spaces into underscores */
    for (p=jcr->Job; *p; p++) {
       if (*p == ' ') {
 
 
 General:
 20Mar09
+kes  Convert seconds.seq separator into seconds_seq so that Bacula
+     editing of the Job name from the full Job name works. This fixes
+     bug #1255 'variable %n changed'.
 kes  Second half of proposed fix for bug #1227 that does not
      mark virtual volumes for unloading.
 kes  Proposed fix for bug #1227 Job and labeling new tape.