summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Persch <chpe@gnome.org>2017-01-29 17:21:03 +0100
committerChristian Persch <chpe@gnome.org>2017-02-12 18:37:30 +0100
commit9fa64b566c9764235a6d3878b9755e2bffd6d852 (patch)
tree13147b253186f99ea333df478903ca53dbafb50b
parenta468172644bbc5d550a82edf54b7a762031ae7ce (diff)
downloadvte-0-44.tar.gz
emulation: Try to work with newer gperfvte-0-44
Use language=C++ in gperf. https://bugzilla.gnome.org/show_bug.cgi?id=777904 (cherry picked from commit 1226f58cd97aa06f0ce58791153ca1f58e89658a)
-rw-r--r--src/vteseq-n.gperf7
-rw-r--r--src/vteseq.cc11
2 files changed, 7 insertions, 11 deletions
diff --git a/src/vteseq-n.gperf b/src/vteseq-n.gperf
index f060c982..573f0451 100644
--- a/src/vteseq-n.gperf
+++ b/src/vteseq-n.gperf
@@ -1,13 +1,14 @@
/* run "make gperf" after modifying this file */
%struct-type
-%language=ANSI-C
+%language=C++
%includes
%enum
%readonly-tables
+%define class-name vteseq_n_hash
%define slot-name seq
-%define hash-function-name vteseq_n_hash
-%define lookup-function-name vteseq_n_lookup
+%define hash-function-name hash
+%define lookup-function-name lookup
%compare-lengths
%pic
diff --git a/src/vteseq.cc b/src/vteseq.cc
index 2330939d..25e697b8 100644
--- a/src/vteseq.cc
+++ b/src/vteseq.cc
@@ -3407,23 +3407,18 @@ vte_sequence_handler_iterm2_1337(VteTerminalPrivate *that, GValueArray *params)
/* Lookup tables */
#define VTE_SEQUENCE_HANDLER(name) name
-
-static const struct vteseq_n_struct *
-vteseq_n_lookup (register const char *str, register unsigned int len);
-#include"vteseq-n.cc"
-
+#include "vteseq-n.cc"
#undef VTE_SEQUENCE_HANDLER
static VteTerminalSequenceHandler
_vte_sequence_get_handler (const char *name)
{
- int len = strlen (name);
+ size_t len = strlen(name);
if (G_UNLIKELY (len < 2)) {
return NULL;
} else {
- const struct vteseq_n_struct *seqhandler;
- seqhandler = vteseq_n_lookup (name, len);
+ auto seqhandler = vteseq_n_hash::lookup (name, len);
return seqhandler ? seqhandler->handler : NULL;
}
}