f84fd1
This patch disables a test which caused failed assertion in tcl 8.6.3.
f84fd1
According to sqlite upstream[1], this should be fixed in tcl 8.6.5.
f84fd1
f84fd1
[1] http://mailinglists.sqlite.org/cgi-bin/mailman/private/sqlite-users/2015-May/059518.html
f84fd1
f84fd1
diff -up sqlite-src-3130000/test/shell1.test.orig sqlite-src-3130000/test/shell1.test
f84fd1
--- sqlite-src-3140100/test/shell1.test.orig	2016-08-12 02:17:02.000000000 +0200
f84fd1
+++ sqlite-src-3140100/test/shell1.test	2016-08-15 15:00:59.869664051 +0200
f84fd1
@@ -855,67 +855,67 @@ do_test shell1-4.6 {
f84fd1
 
f84fd1
 # Test using arbitrary byte data with the shell via standard input/output.
f84fd1
 #
f84fd1
-do_test shell1-5.0 {
f84fd1
-  #
f84fd1
-  # NOTE: Skip NUL byte because it appears to be incompatible with command
f84fd1
-  #       shell argument parsing.
f84fd1
-  #
f84fd1
-  for {set i 1} {$i < 256} {incr i} {
f84fd1
-    #
f84fd1
-    # NOTE: Due to how the Tcl [exec] command works (i.e. where it treats
f84fd1
-    #       command channels opened for it as textual ones), the carriage
f84fd1
-    #       return character (and on Windows, the end-of-file character)
f84fd1
-    #       cannot be used here.
f84fd1
-    #
f84fd1
-    if {$i==0x0D || ($tcl_platform(platform)=="windows" && $i==0x1A)} {
f84fd1
-      continue
f84fd1
-    }
f84fd1
-    if {$i>=0xE0 && $tcl_platform(os)=="OpenBSD"}  continue
f84fd1
-    if {$i>=0xE0 && $i<=0xEF && $tcl_platform(os)=="Linux"}  continue
f84fd1
-    set hex [format %02X $i]
f84fd1
-    set char [subst \\x$hex]; set oldChar $char
f84fd1
-    set escapes [list]
f84fd1
-    if {$tcl_platform(platform)=="windows"} {
f84fd1
-      #
f84fd1
-      # NOTE: On Windows, we need to escape all the whitespace characters,
f84fd1
-      #       the alarm (\a) character, and those with special meaning to
f84fd1
-      #       the SQLite shell itself.
f84fd1
-      #
f84fd1
-      set escapes [list \
f84fd1
-          \a \\a \b \\b \t \\t \n \\n \v \\v \f \\f \r \\r \
f84fd1
-          " " "\" \"" \" \\\" ' \"'\" \\ \\\\]
f84fd1
-    } else {
f84fd1
-      #
f84fd1
-      # NOTE: On Unix, we need to escape most of the whitespace characters
f84fd1
-      #       and those with special meaning to the SQLite shell itself.
f84fd1
-      #       The alarm (\a), backspace (\b), and carriage-return (\r)
f84fd1
-      #       characters do not appear to require escaping on Unix.  For
f84fd1
-      #       the alarm and backspace characters, this is probably due to
f84fd1
-      #       differences in the command shell.  For the carriage-return,
f84fd1
-      #       it is probably due to differences in how Tcl handles command
f84fd1
-      #       channel end-of-line translations.
f84fd1
-      #
f84fd1
-      set escapes [list \
f84fd1
-          \t \\t \n \\n \v \\v \f \\f \
f84fd1
-          " " "\" \"" \" \\\" ' \"'\" \\ \\\\]
f84fd1
-    }
f84fd1
-    set char [string map $escapes $char]
f84fd1
-    set x [catchcmdex test.db ".print $char\n"]
f84fd1
-    set code [lindex $x 0]
f84fd1
-    set res [lindex $x 1]
f84fd1
-    if {$code ne "0"} {
f84fd1
-      error "failed with error: $res"
f84fd1
-    }
f84fd1
-    if {$res ne "$oldChar\n"} {
f84fd1
-      if {[llength $res] > 0} {
f84fd1
-        set got [format %02X [scan $res %c]]
f84fd1
-      } else {
f84fd1
-        set got <empty>
f84fd1
-      }
f84fd1
-      error "failed with byte $hex mismatch, got $got"
f84fd1
-    }
f84fd1
-  }
f84fd1
-} {}
f84fd1
+#do_test shell1-5.0 {
f84fd1
+#  #
f84fd1
+#  # NOTE: Skip NUL byte because it appears to be incompatible with command
f84fd1
+#  #       shell argument parsing.
f84fd1
+#  #
f84fd1
+#  for {set i 1} {$i < 256} {incr i} {
f84fd1
+#    #
f84fd1
+#    # NOTE: Due to how the Tcl [exec] command works (i.e. where it treats
f84fd1
+#    #       command channels opened for it as textual ones), the carriage
f84fd1
+#    #       return character (and on Windows, the end-of-file character)
f84fd1
+#    #       cannot be used here.
f84fd1
+#    #
f84fd1
+#    if {$i==0x0D || ($tcl_platform(platform)=="windows" && $i==0x1A)} {
f84fd1
+#      continue
f84fd1
+#    }
f84fd1
+#    if {$i>=0xE0 && $tcl_platform(os)=="OpenBSD"}  continue
f84fd1
+#    if {$i>=0xE0 && $i<=0xEF && $tcl_platform(os)=="Linux"}  continue
f84fd1
+#    set hex [format %02X $i]
f84fd1
+#    set char [subst \\x$hex]; set oldChar $char
f84fd1
+#    set escapes [list]
f84fd1
+#    if {$tcl_platform(platform)=="windows"} {
f84fd1
+#      #
f84fd1
+#      # NOTE: On Windows, we need to escape all the whitespace characters,
f84fd1
+#      #       the alarm (\a) character, and those with special meaning to
f84fd1
+#      #       the SQLite shell itself.
f84fd1
+#      #
f84fd1
+#      set escapes [list \
f84fd1
+#          \a \\a \b \\b \t \\t \n \\n \v \\v \f \\f \r \\r \
f84fd1
+#          " " "\" \"" \" \\\" ' \"'\" \\ \\\\]
f84fd1
+#    } else {
f84fd1
+#      #
f84fd1
+#      # NOTE: On Unix, we need to escape most of the whitespace characters
f84fd1
+#      #       and those with special meaning to the SQLite shell itself.
f84fd1
+#      #       The alarm (\a), backspace (\b), and carriage-return (\r)
f84fd1
+#      #       characters do not appear to require escaping on Unix.  For
f84fd1
+#      #       the alarm and backspace characters, this is probably due to
f84fd1
+#      #       differences in the command shell.  For the carriage-return,
f84fd1
+#      #       it is probably due to differences in how Tcl handles command
f84fd1
+#      #       channel end-of-line translations.
f84fd1
+#      #
f84fd1
+#      set escapes [list \
f84fd1
+#          \t \\t \n \\n \v \\v \f \\f \
f84fd1
+#          " " "\" \"" \" \\\" ' \"'\" \\ \\\\]
f84fd1
+#    }
f84fd1
+#    set char [string map $escapes $char]
f84fd1
+#    set x [catchcmdex test.db ".print $char\n"]
f84fd1
+#    set code [lindex $x 0]
f84fd1
+#    set res [lindex $x 1]
f84fd1
+#    if {$code ne "0"} {
f84fd1
+#      error "failed with error: $res"
f84fd1
+#    }
f84fd1
+#    if {$res ne "$oldChar\n"} {
f84fd1
+#      if {[llength $res] > 0} {
f84fd1
+#        set got [format %02X [scan $res %c]]
f84fd1
+#      } else {
f84fd1
+#        set got <empty>
f84fd1
+#      }
f84fd1
+#      error "failed with byte $hex mismatch, got $got"
f84fd1
+#    }
f84fd1
+#  }
f84fd1
+#} {}
f84fd1
 
f84fd1
 # These test cases do not work on MinGW
f84fd1
 if 0 {