+++ /dev/null
-
- This patch causes the output directed to a file to be
- flushed after every line. This is a bit overkill, IMO, but
- a user complained about it.
-
- Apply to 1.36.2 with:
-
- cd <bacula>
- patch -p0 <1.36.2-console.patch
- make
- ...
-
-Index: src/console/console.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/console/console.c,v
-retrieving revision 1.53.6.1
-diff -u -b -r1.53.6.1 console.c
---- src/console/console.c 25 Feb 2005 09:47:06 -0000 1.53.6.1
-+++ src/console/console.c 16 Mar 2005 11:36:43 -0000
-@@ -748,10 +748,11 @@
- }
- #else
- fputs(buf, output);
-+ fflush(output);
- if (tee) {
- fputs(buf, stdout);
- }
-- if (output == stdout || tee) {
-+ if (output != stdout || tee) {
- fflush(stdout);
- }
- #endif
+++ /dev/null
-
- This patch should fix a problem with th %l editing in the
- client (FD) where it edited nothing. With this fix, it should
- edit "since".
- Apply the patch to 1.36.2 with:
-
- cd <bacula-source>
- patch -p0 <1.36.2-level.patch
- make
- ...
-
-Index: src/version.h
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/version.h,v
-retrieving revision 1.403.2.5
-retrieving revision 1.403.2.5.2.1
-diff -u -r1.403.2.5 -r1.403.2.5.2.1
---- src/version.h 27 Feb 2005 21:54:02 -0000 1.403.2.5
-+++ src/version.h 4 Mar 2005 09:14:15 -0000 1.403.2.5.2.1
-@@ -1,8 +1,8 @@
- /* */
- #undef VERSION
- #define VERSION "1.36.2"
--#define BDATE "28 February 2005"
--#define LSMDATE "28Feb05"
-+#define BDATE "04 March 2005"
-+#define LSMDATE "04Mar05"
-
- /* Debug flags */
- #undef DEBUG
-Index: src/filed/job.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/filed/job.c,v
-retrieving revision 1.91.4.2
-retrieving revision 1.91.4.2.2.1
-diff -u -r1.91.4.2 -r1.91.4.2.2.1
---- src/filed/job.c 25 Feb 2005 09:47:06 -0000 1.91.4.2
-+++ src/filed/job.c 4 Mar 2005 09:14:16 -0000 1.91.4.2.2.1
-@@ -3,7 +3,7 @@
- *
- * Kern Sibbald, October MM
- *
-- * Version $Id$
-+ * Version $Id$
- *
- */
- /*
-@@ -1139,7 +1139,7 @@
- buf = get_memory(dir->msglen+1);
- utime_t since_time, adj;
- btime_t his_time, bt_start, rt=0, bt_adj=0;
-- if (jcr->JobLevel == 0) {
-+ if (jcr->JobLevel == L_NONE) {
- jcr->JobLevel = L_SINCE; /* if no other job level set, do it now */
- }
- if (sscanf(dir->msg, "level = since_utime %s mtime_only=%d",
+++ /dev/null
-
- This patch corrects a compile problem because of no statfs()
- on NetBSD. The patch was submitted by kardel with bug 258.
-
- Apply the patch to version 1.36.2 with:
-
- cd <bacula>
- patch -p0 <1.36.2-netbsd.patch
- make
- ...
-
-Index: src/findlib/fstype.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/findlib/fstype.c,v
-retrieving revision 1.7.2.2
-diff -u -r1.7.2.2 fstype.c
---- src/findlib/fstype.c 25 Feb 2005 09:47:06 -0000 1.7.2.2
-+++ src/findlib/fstype.c 15 Mar 2005 14:01:44 -0000
-@@ -61,7 +61,6 @@
- */
- #if defined(HAVE_DARWIN_OS) \
- || defined(HAVE_FREEBSD_OS ) \
-- || defined(HAVE_NETBSD_OS) \
- || defined(HAVE_OPENBSD_OS)
-
- #include <sys/param.h>
-@@ -77,7 +76,20 @@
- Dmsg1(50, "statfs() failed for \"%s\"\n", fname);
- return false;
- }
-+#elif defined(HAVE_NETBSD_OS)
-+#include <sys/param.h>
-+#include <sys/mount.h>
-
-+bool fstype(const char *fname, char *fs, int fslen)
-+{
-+ struct statvfs st;
-+ if (statvfs(fname, &st) == 0) {
-+ bstrncpy(fs, st.f_fstypename, fslen);
-+ return true;
-+ }
-+ Dmsg1(50, "statfs() failed for \"%s\"\n", fname);
-+ return false;
-+}
- #elif defined(HAVE_HPUX_OS) \
- || defined(HAVE_IRIX_OS)
-
+++ /dev/null
-
- This patch corrects a problem preventing multiple
- simultaneous jobs from different pools.
- Apply to 1.36.2 with:
-
- cd <bacula-source>
- patch -p0 <1.36.2-pool.patch
- make
- ...
-
-Index: src/dird/jobq.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/dird/jobq.c,v
-retrieving revision 1.25.4.2
-diff -u -r1.25.4.2 jobq.c
---- src/dird/jobq.c 15 Feb 2005 11:51:03 -0000 1.25.4.2
-+++ src/dird/jobq.c 4 Mar 2005 13:16:19 -0000
-@@ -584,7 +584,7 @@
- if (njcr->JobId == 0 || njcr == jcr) {
- continue;
- }
-- if (njcr->pool != jcr->pool) {
-+ if (njcr->store == jcr->store && njcr->pool != jcr->pool) {
- skip_this_jcr = true;
- break;
- }
+++ /dev/null
- This patch should fix a Segfault bug when a job is rescheduled.
- The storage pointers were being released when they should not
- have been.
-
- Apply the patch with:
-
- patch -p0 <1.36.2-reschedule.patch
- make
- ...
-
-Index: src/dird/dird.h
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/dird/dird.h,v
-retrieving revision 1.7
-diff -u -r1.7 dird.h
---- src/dird/dird.h 19 Apr 2004 14:27:00 -0000 1.7
-+++ src/dird/dird.h 18 Mar 2005 17:39:38 -0000
-@@ -45,3 +45,4 @@
-
- /* From job.c */
- void dird_free_jcr(JCR *jcr);
-+void dird_free_jcr_pointers(JCR *jcr);
-Index: src/dird/job.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/dird/job.c,v
-retrieving revision 1.92.2.2
-diff -u -r1.92.2.2 job.c
---- src/dird/job.c 27 Feb 2005 21:53:28 -0000 1.92.2.2
-+++ src/dird/job.c 18 Mar 2005 17:39:38 -0000
-@@ -676,15 +676,9 @@
- }
- }
-
--/*
-- * Free the Job Control Record if no one is still using it.
-- * Called from main free_jcr() routine in src/lib/jcr.c so
-- * that we can do our Director specific cleanup of the jcr.
-- */
--void dird_free_jcr(JCR *jcr)
-+/* Called directly from job rescheduling */
-+void dird_free_jcr_pointers(JCR *jcr)
- {
-- Dmsg0(200, "Start dird free_jcr\n");
--
- if (jcr->sd_auth_key) {
- free(jcr->sd_auth_key);
- jcr->sd_auth_key = NULL;
-@@ -723,7 +717,21 @@
- }
- if (jcr->term_wait_inited) {
- pthread_cond_destroy(&jcr->term_wait);
-+ jcr->term_wait_inited = false;
- }
-+}
-+
-+/*
-+ * Free the Job Control Record if no one is still using it.
-+ * Called from main free_jcr() routine in src/lib/jcr.c so
-+ * that we can do our Director specific cleanup of the jcr.
-+ */
-+void dird_free_jcr(JCR *jcr)
-+{
-+ Dmsg0(200, "Start dird free_jcr\n");
-+
-+ dird_free_jcr_pointers(jcr);
-+
- /* Delete lists setup to hold storage pointers */
- for (int i=0; i<MAX_STORE; i++) {
- if (jcr->storage[i]) {
-Index: src/dird/jobq.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/dird/jobq.c,v
-retrieving revision 1.25.4.2
-diff -u -r1.25.4.2 jobq.c
---- src/dird/jobq.c 15 Feb 2005 11:51:03 -0000 1.25.4.2
-+++ src/dird/jobq.c 18 Mar 2005 17:39:38 -0000
-@@ -481,7 +481,7 @@
- bstrftime(dt, sizeof(dt), time(NULL));
- Jmsg(jcr, M_INFO, 0, _("Rescheduled Job %s at %s to re-run in %d seconds.\n"),
- jcr->Job, dt, (int)jcr->job->RescheduleInterval);
-- dird_free_jcr(jcr); /* partial cleanup old stuff */
-+ dird_free_jcr_pointers(jcr); /* partial cleanup old stuff */
- jcr->JobStatus = JS_WaitStartTime;
- jcr->SDJobStatus = 0;
- if (jcr->JobBytes == 0) {
+++ /dev/null
-
- This patch will fix a subtle bug that was introduced in 1.36.2
- which causes Bacula to be very slow restoring a few files. This
- is because it reads completely to the end of the Volume rather
- than stopping when all the files on the Volume are loaded. The
- introduction of the bug was caused by a patch that fixed
- Bacula truncating tapes after a restore.
-
- Apply the patch to 1.36.2 with the following:
-
- cd <bacula-source>
- patch -p0 <1.36.2-restore-speed.patch
- make
- ...
-
- Note that all source files will be rebuilt during the make.
-
-Index: src/jcr.h
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/jcr.h,v
-retrieving revision 1.76.4.1
-diff -u -u -b -r1.76.4.1 jcr.h
---- src/jcr.h 27 Feb 2005 21:53:28 -0000 1.76.4.1
-+++ src/jcr.h 17 Mar 2005 14:14:18 -0000
-@@ -243,6 +243,7 @@
-
- /* Parmaters for Open Read Session */
- BSR *bsr; /* Bootstrap record -- has everything */
-+ bool mount_next_volume; /* set to cause next volume mount */
- uint32_t read_VolSessionId;
- uint32_t read_VolSessionTime;
- uint32_t read_StartFile;
-Index: src/stored/read_record.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/stored/read_record.c,v
-retrieving revision 1.47.4.1
-diff -u -u -b -r1.47.4.1 read_record.c
---- src/stored/read_record.c 15 Feb 2005 11:51:04 -0000 1.47.4.1
-+++ src/stored/read_record.c 17 Mar 2005 14:14:18 -0000
-@@ -5,13 +5,16 @@
- * archive. It uses a callback to pass you each record in turn,
- * as well as a callback for mounting the next tape. It takes
- * care of reading blocks, applying the bsr, ...
-+ * Note, this routine is really the heart of the restore routines,
-+ * and we are *really* bit pushing here so be careful about making
-+ * any modifications.
- *
- * Kern E. Sibbald, August MMII
- *
-- * Version $Id$
-+ * Version $Id$
- */
- /*
-- Copyright (C) 2000-2004 Kern Sibbald and John Walker
-+ Copyright (C) 2000-2005 Kern Sibbald
-
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
-@@ -57,6 +60,7 @@
-
- recs = New(dlist(rec, &rec->link));
- position_to_first_file(jcr, dev);
-+ jcr->mount_next_volume = false;
-
- for ( ; ok && !done; ) {
- if (job_canceled(jcr)) {
-@@ -66,12 +70,11 @@
- if (!read_block_from_device(dcr, CHECK_BLOCK_NUMBERS)) {
- if (dev->at_eot()) {
- DEV_RECORD *trec = new_record();
--
- Jmsg(jcr, M_INFO, 0, "End of Volume at file %u on device %s, Volume \"%s\"\n",
- dev->file, dev_name(dev), dcr->VolumeName);
- if (!mount_cb(dcr)) {
- Jmsg(jcr, M_INFO, 0, "End of all volumes.\n");
-- ok = false;
-+ ok = false; /* Stop everything */
- /*
- * Create EOT Label so that Media record may
- * be properly updated because this is the last
-@@ -81,8 +84,13 @@
- trec->File = dev->file;
- ok = record_cb(dcr, trec);
- free_record(trec);
-+ if (jcr->mount_next_volume) {
-+ jcr->mount_next_volume = false;
-+ dev->state &= ~ST_EOT;
-+ }
- break;
- }
-+ jcr->mount_next_volume = false;
- /*
- * We just have a new tape up, now read the label (first record)
- * and pass it off to the callback routine, then continue
-@@ -113,10 +121,10 @@
- display_tape_error_status(jcr, dev);
- if (forge_on || jcr->ignore_label_errors) {
- fsr_dev(dev, 1); /* try skipping bad record */
-- Dmsg0(000, "Did fsr\n");
-+ Pmsg0(000, "Did fsr\n");
- continue; /* try to continue */
- }
-- ok = false;
-+ ok = false; /* stop everything */
- break;
- }
- }
-@@ -259,7 +267,11 @@
- Dmsg2(300, "Current postion (file:block) %d:%d\n",
- dev->file, dev->block_num);
- jcr->bsr->mount_next_volume = false;
--// dev->state |= ST_EOT;
-+ if (!dev->at_eot()) {
-+ /* Set EOT flag to force mount of next Volume */
-+ jcr->mount_next_volume = true;
-+ dev->state |= ST_EOT;
-+ }
- rec->Block = 0;
- return 1;
- }
+++ /dev/null
-
- This patch fails a job if no Storage resource is specified and
- the job attempts to call the SD.
-
- Apply the patch to 1.36.2 with:
-
- cd <bacula-source>
- patch -p0 <1.36.2-store.patch
- make
- ...
-
-Index: src/dird/msgchan.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/dird/msgchan.c,v
-retrieving revision 1.32.4.1
-diff -u -r1.32.4.1 msgchan.c
---- src/dird/msgchan.c 14 Feb 2005 10:02:21 -0000 1.32.4.1
-+++ src/dird/msgchan.c 18 Mar 2005 15:40:53 -0000
-@@ -66,6 +66,10 @@
- BSOCK *sd;
- STORE *store;
-
-+ if (!jcr->storage[0]) {
-+ Jmsg(jcr, M_FATAL, 0, _("Attempt to contact the Storage daemon with no Storage resource.\n"));
-+ return false;
-+ }
- store = (STORE *)jcr->storage[0]->first();
-
- /*
+++ /dev/null
-
- This patch should fix memory leaks in tray-monitor.
- Apply the patch to 1.36.2 with:
-
- cd <bacula-source>/src/tray-monitor
- patch -p0 <1.36.2-tray-monitor-memleak.patch
- make
- ...
-
-Index: tray-monitor.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/tray-monitor/tray-monitor.c,v
-retrieving revision 1.19
-diff -r1.19 tray-monitor.c
-36a37,38
-> #define TRAY_DEBUG_MEMORY 0
->
-50d51
-< static POOLMEM *args;
-135a137,157
-> int sm_line = 0;
->
-> #if TRAY_DEBUG_MEMORY
-> gpointer smt_malloc(gsize n_bytes) {
-> return sm_malloc("GLib", sm_line, n_bytes);
-> }
->
-> gpointer smt_realloc(gpointer mem, gsize n_bytes) {
-> return sm_realloc("GLib", sm_line, mem, n_bytes);
-> }
->
-> gpointer smt_calloc(gsize n_blocks,
-> gsize n_block_bytes) {
-> return sm_calloc("GLib", sm_line, n_blocks, n_block_bytes);
-> }
->
-> void smt_free(gpointer mem) {
-> sm_free("Glib", sm_line, mem);
-> }
-> #endif
->
-142a165,175
-> #if TRAY_DEBUG_MEMORY
-> GMemVTable smvtable;
-> smvtable.malloc = &smt_malloc;
-> smvtable.realloc = &smt_realloc;
-> smvtable.free = &smt_free;
-> smvtable.calloc = &smt_calloc;
-> smvtable.try_malloc = NULL;
-> smvtable.try_realloc = NULL;
-> g_mem_set_vtable(&smvtable);
-> #endif
->
-154d186
-< args = get_pool_memory(PM_FNAME);
-255c287
-< g_assert((xpm_generic_var[i] = (char*)g_malloc(strlen(xpm_generic[i])*sizeof(char))));
----
-> g_assert((xpm_generic_var[i] = (char*)g_malloc((strlen(xpm_generic[i])+1)*sizeof(char))));
-412a445,448
->
-> g_source_remove(timerTag);
->
-> sm_line = 0;
-422d457
-< free_pool_memory(args);
-429a465,468
->
-> gtk_object_destroy(GTK_OBJECT(window));
-> gtk_object_destroy(GTK_OBJECT(mTrayMenu));
-> term_msg();
-430a470,473
-> #if TRAY_DEBUG_MEMORY
-> sm_dump(false);
-> #endif
->
-534c577,581
-< GtkTextBuffer *newbuffer = gtk_text_buffer_new(NULL);
----
-> sm_line++;
-> #if TRAY_DEBUG_MEMORY
-> printf("sm_line=%d\n", sm_line);
-> #endif
-> GtkTextBuffer *newbuffer;
-546a594,595
-> newbuffer = gtk_text_buffer_new(NULL);
->
-558a608,609
-> g_slist_free(list);
->
-963a1015
-> g_object_unref(G_OBJECT(pixbuf));
+++ /dev/null
-
- This patch will prevent the Win32 FD from printing an error message
- when it attempts to restore the permissions for a drive (which Win32
- doesn't permit). The error is harmless in any case.
- Apply the patch to 1.36.2 with
-
- cd <bacula-source>
- patch -p0 <1.36.2-win32-drive.patch
- make
- ...<F12>
-
-
-Index: src/findlib/create_file.c
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/findlib/create_file.c,v
-retrieving revision 1.34
-diff -u -r1.34 create_file.c
---- src/findlib/create_file.c 27 Jul 2004 21:00:33 -0000 1.34
-+++ src/findlib/create_file.c 9 Mar 2005 17:52:50 -0000
-@@ -271,6 +271,12 @@
- if ((bopen(bfd, attr->ofname, O_WRONLY|O_BINARY, 0)) < 0) {
- berrno be;
- be.set_errno(bfd->berrno);
-+#ifdef HAVE_WIN32
-+ /* Check for trying to create a drive, if so, skip */
-+ if (attr->ofname[1] == ':' && attr->ofname[2] == '/' && attr->ofname[3] == 0) {
-+ return CF_SKIP;
-+ }
-+#endif
- Jmsg2(jcr, M_ERROR, 0, _("Could not open %s: ERR=%s\n"),
- attr->ofname, be.strerror());
- return CF_ERROR;
+++ /dev/null
-Index: CHANGELOG
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/wx-console/CHANGELOG,v
-retrieving revision 1.42.8.2
-retrieving revision 1.42
-diff -r1.42.8.2 -r1.42
-1,9d0
-< 24-03-2005 :
-< - wxbMainFrame : Fix a bug with GTK+-1.2 which caused wx-console to crash
-< when starting.
-< - wxbRestorePanel : Fix a major bug which caused wx-console to enter in an
-< infinite loop which allocate a lot of memory and could make the system crash.
-<
-< 10-03-2005 :
-< - wxbMainFrame : Fix bug #0000221 (Debian 292517)
-<
-Index: wxbmainframe.cpp
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/wx-console/wxbmainframe.cpp,v
-retrieving revision 1.30.6.2
-retrieving revision 1.30
-diff -r1.30.6.2 -r1.30
-7c7
-< * Version $Id$
----
-> * Version $Id$
-210,211d209
-< lockedbyconsole = false;
-<
-317a316,317
-> lockedbyconsole = false;
->
-650,651c650,651
-< if (res == -1) { //Cancel pressed
-< Send(".\n");
----
-> if (res == -1) {
-> Send("\n");
-Index: wxbrestorepanel.cpp
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/wx-console/wxbrestorepanel.cpp,v
-retrieving revision 1.40.8.1
-retrieving revision 1.40
-diff -r1.40.8.1 -r1.40
-7c7
-< * Version $Id$
----
-> * Version $Id$
-411c411
-< markWhenCommandDone = false;
----
-> markWhenListingDone = false;
-1987a1988
-> AddPendingEvent(event);
-1996a1998
-> AddPendingEvent(event);
-2002a2005
-> AddPendingEvent(event);
-2015a2019
-> AddPendingEvent(event);
-2024c2028
-< markWhenCommandDone = false;
----
-> markWhenListingDone = false;
-2028c2032
-< if (markWhenCommandDone) {
----
-> if (markWhenListingDone) {
-2041a2046
-> csprint("Tree marked", CS_DEBUG);
-2044c2049
-< markWhenCommandDone = !markWhenCommandDone;
----
-> markWhenListingDone = !markWhenListingDone;
-2045a2051
-> AddPendingEvent(event);
-2049d2054
-< markWhenCommandDone = false;
-2051,2054c2056
-< if (markWhenCommandDone) {
-< CmdMark(event.GetItem(), NULL, 0);
-< tree->Refresh();
-< }
----
-> //event.Skip();
-2065a2068
-> AddPendingEvent(event);
-2080a2084
-> AddPendingEvent(event);
-2095a2100
-> AddPendingEvent(event);
-2105a2111,2112
-> AddPendingEvent(event);
-> //event.Skip();
-2125c2132
-<
----
->
-2140a2148,2149
-> AddPendingEvent(event);
-> //event.Skip();
-2176a2186
-> AddPendingEvent(event);
-2212a2223
-> AddPendingEvent(event);
-2241a2253
-> AddPendingEvent(event);
-2270a2283
-> AddPendingEvent(event);
-Index: wxbrestorepanel.h
-===================================================================
-RCS file: /cvsroot/bacula/bacula/src/wx-console/wxbrestorepanel.h,v
-retrieving revision 1.19.10.1
-retrieving revision 1.19
-diff -r1.19.10.1 -r1.19
-7c7
-< * Version $Id$
----
-> * Version $Id$
-154c154
-< bool markWhenCommandDone; //If an item should be (un)marked after the current listing/marking is done
----
-> bool markWhenListingDone;
+++ /dev/null
-
-04Mar05 1.36.2-level.patch
- This patch should fix a problem with th %l editing in the
- client (FD) where it edited nothing. With this fix, it should
- edit "since".
-
-04Mar05 1.36.2-pool.patch
- This patch corrects a problem preventing multiple
- simultaneous jobs from different pools.
-
-09Mar05 1.36.2-win32-drive.patch
- This patch will prevent the Win32 FD from printing an error message
- when it attempts to restore the permissions for a drive (which Win32
- doesn't permit). The error is harmless in any case.
-
-15Mar05 1.36.2-netbsd.patch
- This patch corrects a compile problem because of no statfs()
- on NetBSD. The patch was submitted by kardel with bug 258.
-
-16Mar05 1.36.2-console.patch
- This patch causes the output directed to a file to be
- flushed after every line. This is a bit overkill, IMO, but
- a user complained about it.
-
-17Mar05 1.36.2-restore-speed.patch
- This patch will fix a subtle bug that was introduced in 1.36.2
- which causes Bacula to be very slow restoring a few files. This
- is because it reads completely to the end of the Volume rather
- than stopping when all the files on the Volume are loaded. The
- introduction of the bug was caused by a patch that fixed
- Bacula truncating tapes after a restore.
- Note that all source files will be rebuilt during the make.
-
-18Mar05 1.36.2-store.patch
- This patch fails a job if no Storage resource is specified and
- the job attempts to call the SD.
-
-18Mar05 1.36.2-reschedule.patch
- This patch should fix a Segfault bug when a job is rescheduled.
- The storage pointers were being released when they should not
- have been.
-
-24Mar05 1.36.2-wx-console-bugfixes.patch
- Major wx-console fixes (see src/wx-console/CHANGELOG for details).
-
-28Mar05 1.36.2-tray-monitor-memleak.patch
- This patch should fix memory leaks in tray-monitor.
--- /dev/null
+
+04Mar05 1.36.3-
+ This patch should fix a problem ...