Tcl Source Code

Ticket Change Details
Login
Overview

Artifact ID: 5c8a55da0d07ec9d98249ea5fdef84910cc1a969
Ticket: 293344d4f3e07f7f9da93db4b967abed8122bd42
Regression in SQLite test-suite
User & Date: jan.nijtmans 2017-07-13 15:00:42
Changes

  1. assignee changed to: "nobody"
  2. closer changed to: "nobody"
  3. cmimetype changed to: "text/x-fossil-wiki"
  4. comment changed to:
    When running the latest SQLite test-suite there was a regression in 2 test-cases, one of them:
    badutf2-4.1.5...
    ! badutf2-4.1.5 expected: [\u0080]
    ! badutf2-4.1.5 got:      [\uFF80]
    
    bisecting Tcl pointed to commit [7351fc0c9c], but - actually - there's nothing wrong with this commit. Further investigation resulted in the observation that the macro TclUtfToUniChar() contained a mistake: If 'str' points to a signed character (which it normally does), a character in the range \x80-\xC0 results in an unicode character in the range \xFF80-\xFFC0 ... this is clearly wrong.
    
    Conclusion: this is a long-standing bug in the TclUtfToUniChar() macro, which was never discovered because there was no test-case touching this.
    Commit [7351fc0c9c] merely exposed this bug in the SQLite test-suite.
    
  5. foundin changed to: "core-8-6-branch"
  6. is_private changed to: "0"
  7. login: "jan.nijtmans"
  8. priority changed to: "5 Medium"
  9. resolution changed to: "None"
  10. severity changed to: "Minor"
  11. status changed to: "Open"
  12. submitter changed to: "jan.nijtmans"
  13. subsystem changed to: "- New Builtin Commands"
  14. title changed to: "Regression in SQLite test-suite"
  15. type changed to: "Bug"