[Scummvm-cvs-logs] scummvm master -> 5686d606f0c7d766a37992075e8e7b8f1fae486e

wjp wjp at usecode.org
Thu Jan 2 01:05:13 CET 2014


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
5686d606f0 BUILD: Support libedit readline wrapper


Commit: 5686d606f0c7d766a37992075e8e7b8f1fae486e
    https://github.com/scummvm/scummvm/commit/5686d606f0c7d766a37992075e8e7b8f1fae486e
Author: Willem Jan Palenstijn (wjp at usecode.org)
Date: 2014-01-01T16:04:24-08:00

Commit Message:
BUILD: Support libedit readline wrapper

This is used in Mac OS X. Thanks to waltervn for pointing this out and
testing.

Changed paths:
    configure
    gui/debugger.cpp



diff --git a/configure b/configure
index d454591..e954ad9 100755
--- a/configure
+++ b/configure
@@ -3667,6 +3667,25 @@ fi
 if test "$_readline" = yes ; then
 	LIBS="$LIBS $READLINE_LIBS $_READLINE_LIBS"
 	INCLUDES="$INCLUDES $READLINE_CFLAGS"
+
+	#
+	# Check the type of rl_completion_entry_function.
+	# It can be int(*)(const char *, int) or char *(*)(const char *, int).
+	#
+	cat > $TMPC << EOF
+#include <stdio.h>
+#include <readline/readline.h>
+#include <readline/history.h>
+
+int readline_completionFunction(const char *, int);
+
+int main(void) {
+	char *x = readline("");
+	rl_completion_entry_function = &readline_completionFunction;
+}
+EOF
+	cc_check -c && add_line_to_config_h '#define USE_READLINE_INT_COMPLETION'
+
 fi
 define_in_config_h_if_yes "$_readline" 'USE_READLINE'
 
diff --git a/gui/debugger.cpp b/gui/debugger.cpp
index 35627dd..9aa322e 100644
--- a/gui/debugger.cpp
+++ b/gui/debugger.cpp
@@ -133,6 +133,14 @@ Debugger *g_readline_debugger;
 char *readline_completionFunction(const char *text, int state) {
 	return g_readline_debugger->readlineComplete(text, state);
 }
+
+#ifdef USE_READLINE_INT_COMPLETION
+typedef int RLCompFunc_t(const char *, int);
+#else
+typedef char *RLCompFunc_t(const char *, int);
+#endif
+
+
 } // end of anonymous namespace
 #endif
 
@@ -162,7 +170,7 @@ void Debugger::enter() {
 	// TODO: add support for saving/loading history?
 
 	g_readline_debugger = this;
-	rl_completion_entry_function = &readline_completionFunction;
+	rl_completion_entry_function = (RLCompFunc_t *)&readline_completionFunction;
 
 	char *line_read = 0;
 	do {






More information about the Scummvm-git-logs mailing list