Blame SOURCES/sqlite-3.8.10.1-tcl-regress-tests.patch

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