Patchwork [v2] ui/gtk: Support versions of VTE before 0.26

login
register
mail settings
Submitter Stefan Weil
Date Feb. 22, 2013, 7:09 p.m.
Message ID <1361560199-28906-1-git-send-email-sw@weilnetz.de>
Download mbox | patch
Permalink /patch/222617/
State Accepted
Headers show

Comments

Stefan Weil - Feb. 22, 2013, 7:09 p.m.
This is needed for current Debian stable (Squeeze).

VTE versions before 0.26 did not support VtePty.

Lower the version requirement and use alternate code which works for Debian.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
---

v2: Fixed version in subject and preprocessor code.

 configure |    2 +-
 ui/gtk.c  |    7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)
Anthony Liguori - Feb. 26, 2013, 7:20 p.m.
Applied.  Thanks.

Regards,

Anthony Liguori

Patch

diff --git a/configure b/configure
index 0eb25dd..d62ad7a 100755
--- a/configure
+++ b/configure
@@ -1645,7 +1645,7 @@  fi
 
 if test "$gtk" != "no"; then
     if $pkg_config --exists 'gtk+-2.0 >= 2.18.0' && \
-       $pkg_config --exists 'vte >= 0.26.0'; then
+       $pkg_config --exists 'vte >= 0.24.0'; then
 	gtk_cflags=`$pkg_config --cflags gtk+-2.0 2>/dev/null`
 	gtk_libs=`$pkg_config --libs gtk+-2.0 2>/dev/null`
 	vte_cflags=`$pkg_config --cflags vte 2>/dev/null`
diff --git a/ui/gtk.c b/ui/gtk.c
index 10bac94..d1230a6 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -869,7 +869,9 @@  static GSList *gd_vc_init(GtkDisplayState *s, VirtualConsole *vc, int index, GSL
     const char *label;
     char buffer[32];
     char path[32];
+#if VTE_CHECK_VERSION(0, 26, 0)
     VtePty *pty;
+#endif
     GIOChannel *chan;
     GtkWidget *scrolled_window;
     GtkAdjustment *vadjustment;
@@ -902,9 +904,12 @@  static GSList *gd_vc_init(GtkDisplayState *s, VirtualConsole *vc, int index, GSL
     cfmakeraw(&tty);
     tcsetattr(slave_fd, TCSAFLUSH, &tty);
 
+#if VTE_CHECK_VERSION(0, 26, 0)
     pty = vte_pty_new_foreign(master_fd, NULL);
-
     vte_terminal_set_pty_object(VTE_TERMINAL(vc->terminal), pty);
+#else
+    vte_terminal_set_pty(VTE_TERMINAL(vc->terminal), master_fd);
+#endif
 
     vte_terminal_set_scrollback_lines(VTE_TERMINAL(vc->terminal), -1);