Re: [PATCH 1/4] terminal: use flags for save_term()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/03/2022 14:02, Ævar Arnfjörð Bjarmason wrote:

On Fri, Mar 04 2022, Phillip Wood wrote:

From: Phillip Wood <phillip.wood@xxxxxxxxxxxxx>

The next commit will add another flag in addition to the existing
full_duplex so change the function signature to take an unsigned flags
argument. Also alter the functions that call save_term() so that they
can pass flags down to it.

Signed-off-by: Phillip Wood <phillip.wood@xxxxxxxxxxxxx>
---
  compat/terminal.c | 41 +++++++++++++++++++++--------------------
  compat/terminal.h |  5 ++++-
  2 files changed, 25 insertions(+), 21 deletions(-)

diff --git a/compat/terminal.c b/compat/terminal.c
index d882dfa06e..bad8e04cd8 100644
--- a/compat/terminal.c
+++ b/compat/terminal.c
@@ -34,7 +34,7 @@ void restore_term(void)
  	sigchain_pop_common();
  }
-int save_term(int full_duplex)
+int save_term(unsigned flags)

Doing e.g.  ...

  void restore_term(void)
diff --git a/compat/terminal.h b/compat/terminal.h
index 0fb9fa147c..f24b91390d 100644
--- a/compat/terminal.h
+++ b/compat/terminal.h
@@ -1,14 +1,17 @@
  #ifndef COMPAT_TERMINAL_H
  #define COMPAT_TERMINAL_H
+/* Save input and output settings */
+#define SAVE_TERM_DUPLEX (1u << 0)
	
	enum save_terminal_flags {
		SAVE_TERMINAL_FLAGS = 1 << 0,
	};
	
Here would be better IMO. See 3f9ab7ccdea (parse-options.[ch]:
consistently use "enum parse_opt_flags", 2021-10-08) for how it makes
debugging better.

I'd remembered Junio objecting to enums for bit flags in the discussion of that patch but looking at the whole thread it seems like the debugger support lead him to change his mind. I'll update.

Best Wishes

Phillip



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux