lok: vcl: fix multiple floatwin removal case more robustly.
[LibreOffice.git] / external / firebird / 0001-Avoid-hangup-in-SS-when-error-happens-at-system-atta.patch.1
blobe569fccdced68cd663d189e902970a7cc5530f03
1 From 36a7a2634669075be3294a1d075524a0b6f80962 Mon Sep 17 00:00:00 2001
2 From: hvlad <hvlad@users.sourceforge.net>
3 Date: Wed, 17 Aug 2016 15:45:30 +0300
4 Subject: [PATCH] Avoid hangup in SS when error happens at system attachment
5  initialization time
7 ---
8  src/jrd/cch.cpp | 7 ++++++-
9  src/jrd/vio.cpp | 5 +++++
10  2 files changed, 11 insertions(+), 1 deletion(-)
12 diff --git a/src/jrd/cch.cpp b/src/jrd/cch.cpp
13 index 35ea096..643cf4d 100644
14 --- a/src/jrd/cch.cpp
15 +++ b/src/jrd/cch.cpp
16 @@ -2963,10 +2963,15 @@ static THREAD_ENTRY_DECLARE cache_writer(THREAD_ENTRY_PARAM arg)
17                 iscDbLogStatus(dbb->dbb_filename.c_str(), &status_vector);
18         }
20 -       bcb->bcb_flags &= ~(BCB_cache_writer | BCB_writer_start);
21 +       bcb->bcb_flags &= ~BCB_cache_writer;
23         try
24         {
25 +               if (bcb->bcb_flags & BCB_writer_start)
26 +               {
27 +                       bcb->bcb_flags &= ~BCB_writer_start;
28 +                       bcb->bcb_writer_init.release();
29 +               }
30                 bcb->bcb_writer_fini.release();
31         }
32         catch (const Firebird::Exception& ex)
33 diff --git a/src/jrd/vio.cpp b/src/jrd/vio.cpp
34 index a8cf0fc..3d35a27 100644
35 --- a/src/jrd/vio.cpp
36 +++ b/src/jrd/vio.cpp
37 @@ -4988,6 +4988,11 @@ static THREAD_ENTRY_DECLARE garbage_collector(THREAD_ENTRY_PARAM arg)
38         try
39         {
40                 // Notify the finalization caller that we're finishing.
41 +               if (dbb->dbb_flags & DBB_gc_starting)
42 +               {
43 +                       dbb->dbb_flags &= ~DBB_gc_starting;
44 +                       dbb->dbb_gc_init.release();
45 +               }
46                 dbb->dbb_gc_fini.release();
47         }
48         catch (const Firebird::Exception& ex)
49 -- 
50 2.9.3