Преглед изворни кода

Made dependency on readline optional.

Ryan C. Gordon пре 24 година
родитељ
комит
9d8f80df19
1 измењених фајлова са 20 додато и 0 уклоњено
  1. 20 0
      test/test_physfs.c

+ 20 - 0
test/test_physfs.c

@@ -9,9 +9,18 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <errno.h>
+#include <string.h>
+
+#if (!defined WIN32)
+#define HAVE_READLINE
+#endif
+
+#if (defined HAVE_READLINE)
 #include <unistd.h>
 #include <readline.h>
 #include <history.h>
+#endif
+
 #include "physfs.h"
 
 #define TEST_VERSION_MAJOR  0
@@ -473,12 +482,15 @@ static int process_command(char *complete_cmd)
         if (i->cmd == NULL)
             printf("Unknown command. Enter \"help\" for instructions.\n");
 
+#if (defined HAVE_READLINE)
         add_history(complete_cmd);
         if (history_file)
         {
             fprintf(history_file, "%s\n", complete_cmd);
             fflush(history_file);
         } /* if */
+#endif
+
     } /* if */
 
     free(cmd_copy);
@@ -488,6 +500,7 @@ static int process_command(char *complete_cmd)
 
 static void open_history_file(void)
 {
+#if (defined HAVE_READLINE)
 #if 0
     const char *envr = getenv("TESTPHYSFS_HISTORY");
     if (!envr)
@@ -530,6 +543,7 @@ static void open_history_file(void)
                "  Will not be able to record this session's history.\n\n",
                 envr);
     } /* if */
+#endif
 } /* open_history_file */
 
 
@@ -555,7 +569,13 @@ int main(int argc, char **argv)
 
     do
     {
+#if (defined HAVE_READLINE)
         buf = readline("> ");
+#else
+        buf = malloc(512);
+        memset(buf, '\0', 512);
+        scanf("%s", buf);
+#endif
         rc = process_command(buf);
         free(buf);
     } while (rc);