Public bug reported:

With default Tcl/Tk versions installed, tkcvs reliably freezes up after
launching as soon as you move the mouse cursor over any of the files
listed in the main panel. If you carefully avoid crossing that area,
menus and other buttons do continue to function.

Running `strace` wasn't too insightful on its own, but the fact that the
font in the file list attempted to update when the UI froze was a clue.
Launching with `FC_DEBUG=1 tkcvs`, you can see font lookups get stuck in
an infinite loop as soon as the UI freezes.

Finally, digging through the Tcl source a bit looking for hints, I came
across a code region which works around a bug in Tk v8.5.0 through
v8.5.7, but the version check isn't written robustly enough to avoid
taking effect for v8.6. On a guess, I applied the attached patch, and
that seems to fix the issue.

$ lsb_release -rd
Description:    Ubuntu 18.04.2 LTS
Release:        18.04

$ apt-cache policy tkcvs tcl tk
tkcvs:
  Installed: 8.2.3-1.1
  Candidate: 8.2.3-1.1
  Version table:
 *** 8.2.3-1.1 500
        500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
        100 /var/lib/dpkg/status
tcl:
  Installed: 8.6.0+9
  Candidate: 8.6.0+9
  Version table:
 *** 8.6.0+9 500
        500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
        100 /var/lib/dpkg/status
tk:
  Installed: 8.6.0+9
  Candidate: 8.6.0+9
  Version table:
 *** 8.6.0+9 500
        500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
        100 /var/lib/dpkg/status

** Affects: tkcvs (Ubuntu)
     Importance: Undecided
         Status: New

** Patch added: "Guard for tk < v8.6"
   
https://bugs.launchpad.net/bugs/1817571/+attachment/5241589/+files/tkcvs_ver8p6.patch

** Description changed:

  With default Tcl/Tk versions installed, tkcvs reliably freezes up after
  launching as soon as you move the mouse cursor over any of the files
  listed in the main panel. If you carefully avoid crossing that area,
  menus and other buttons do continue to function.
  
  Running `strace` wasn't too insightful on its own, but the fact that the
  font in the file list attempted to update when the UI froze was a clue.
  Launching with `FC_DEBUG=1 tkcvs`, you can see font lookups get stuck in
  an infinite loop as soon as the UI freezes.
  
  Finally, digging through the Tcl source a bit looking for hints, I came
  across a code region which works around a bug in Tk v8.5.0 through
  v8.5.7, but the version check isn't written robustly enough to avoid
  taking effect for v8.6. On a guess, I applied the attached patch, and
  that seems to fix the issue.
  
  $ lsb_release -rd
  Description:  Ubuntu 18.04.2 LTS
  Release:      18.04
  
- $ tkcvs:
-   Installed: 8.2.3-1.1
-   Candidate: 8.2.3-1.1
-   Version table:
-  *** 8.2.3-1.1 500
-         500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
-         100 /var/lib/dpkg/status
+ $ apt-cache policy tkcvs tcl tk
+ tkcvs:
+   Installed: 8.2.3-1.1
+   Candidate: 8.2.3-1.1
+   Version table:
+  *** 8.2.3-1.1 500
+         500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
+         100 /var/lib/dpkg/status
  tcl:
-   Installed: 8.6.0+9
-   Candidate: 8.6.0+9
-   Version table:
-  *** 8.6.0+9 500
-         500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
-         100 /var/lib/dpkg/status
+   Installed: 8.6.0+9
+   Candidate: 8.6.0+9
+   Version table:
+  *** 8.6.0+9 500
+         500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
+         100 /var/lib/dpkg/status
  tk:
-   Installed: 8.6.0+9
-   Candidate: 8.6.0+9
-   Version table:
-  *** 8.6.0+9 500
-         500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
-         100 /var/lib/dpkg/status
+   Installed: 8.6.0+9
+   Candidate: 8.6.0+9
+   Version table:
+  *** 8.6.0+9 500
+         500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
+         100 /var/lib/dpkg/status

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1817571

Title:
  UI freezes

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/tkcvs/+bug/1817571/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to