summaryrefslogtreecommitdiff
path: root/apt-pkg/install-progress.h
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2022-01-06 19:56:23 +0000
committerJulian Andres Klode <jak@debian.org>2022-01-06 19:56:23 +0000
commit64205c6850cf4323af317eff371c131c1bb7ebfc (patch)
tree7167da96a18c6f4efc501c00756a41d3675d9752 /apt-pkg/install-progress.h
parent0ce8ea6f1920a700a088ab9815cf63197fcf4dfb (diff)
parentec27853181d898f738ad20fed00f37a00d1d09c3 (diff)
Merge branch 'main' into 'main'
Fix incorrect SIGWINCH handling See merge request apt-team/apt!204
Diffstat (limited to 'apt-pkg/install-progress.h')
-rw-r--r--apt-pkg/install-progress.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/apt-pkg/install-progress.h b/apt-pkg/install-progress.h
index 94b66ed9b..617ce2a35 100644
--- a/apt-pkg/install-progress.h
+++ b/apt-pkg/install-progress.h
@@ -126,11 +126,14 @@ namespace Progress {
private:
APT_HIDDEN static void staticSIGWINCH(int);
static std::vector<PackageManagerFancy*> instances;
+ static sighandler_t SIGWINCH_orig;
+ static volatile sig_atomic_t SIGWINCH_flag;
+ APT_HIDDEN void CheckSIGWINCH();
APT_HIDDEN bool DrawStatusLine();
protected:
void SetupTerminalScrollArea(int nr_rows);
- void HandleSIGWINCH(int);
+ void HandleSIGWINCH(int); // for abi compatibility, do not use
typedef struct {
int rows;
@@ -138,12 +141,13 @@ namespace Progress {
} TermSize;
TermSize GetTerminalSize();
- sighandler_t old_SIGWINCH;
+ sighandler_t old_SIGWINCH; // for abi compatibility, do not use
int child_pty;
public:
PackageManagerFancy();
virtual ~PackageManagerFancy();
+ virtual void Pulse() APT_OVERRIDE;
virtual void Start(int child_pty=-1) APT_OVERRIDE;
virtual void Stop() APT_OVERRIDE;
virtual bool StatusChanged(std::string PackageName,