Pidgin version 2.14.8 freezes when creating long message or resizing window

Bug #1975519 reported by Paul Meckel
36
This bug affects 6 people
Affects Status Importance Assigned to Milestone
Pidgin
Unknown
Unknown
pidgin (Ubuntu)
Fix Released
Undecided
Unassigned
Jammy
Fix Released
High
Julian Andres Klode

Bug Description

[Impact]
In the current LTS version (2.14.8) of the pidgin instant messenger there is a critical bug that makes it become unresponsive with an infinite loop when a user enters a long text into the text box that makes the text box resize into one with a scroll bar or when the user resizes the message window such that a text already entered becomes too large for it, creating such a scroll bar.

This bug is critical as sending arbitrary amounts of text is a major feature of any messaging program and having it become unresponsive and needing to kill it is unacceptable, especially for long messages that are thus lost before being sent.

More information in the original report here and in the duplicate reports: https://issues.imfreedom.org/issue/PIDGIN-17413

I request that the ubuntu package repository for 22.04 (jammy) is updated with pidgin 2.14.9, which fixes this bug.

[Test plan]
Write more text in field than fits, when the scrollbar appears it hangs. Chat for a while with some resizing to check no regressions.

[Where problems could occur]
From investigating the patch, it seems to count resizes and do stuff, it seems that this could break other cases of resizing the widget.

[Other info]
```
lsb_release -rd
Description: Ubuntu 22.04 LTS
Release: 22.04
```

```
apt-cache policy pidgin
pidgin:
  Installed: 1:2.14.8-1ubuntu2
  Candidate: 1:2.14.8-1ubuntu2
  Version table:
 *** 1:2.14.8-1ubuntu2 500
        500 http://de.archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
        100 /var/lib/dpkg/status
```

ProblemType: Bug
DistroRelease: Ubuntu 22.04
Package: pidgin 1:2.14.8-1ubuntu2
ProcVersionSignature: Ubuntu 5.15.0-27.28-generic 5.15.30
Uname: Linux 5.15.0-27-generic x86_64
ApportVersion: 2.20.11-0ubuntu82.1
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: MATE
Date: Mon May 23 19:34:04 2022
InstallationDate: Installed on 2020-04-26 (757 days ago)
InstallationMedia: Ubuntu-MATE 20.04 LTS "Focal Fossa" - Release amd64 (20200423)
SourcePackage: pidgin
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Paul Meckel (falcoger) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in pidgin (Ubuntu):
status: New → Confirmed
Revision history for this message
in8sworld (n8berry) wrote :

I have the same version as above and the same issue. Its interesting because if I type out a really long comment in gedit first and copy and paste it into the chat field it will take that text just fine. The problem only happens (to me) when I'm typing out a message in the chat window itself and as described above, the window needs to be resized to fit. If I use Shift Enter before I get to the end of the line that causes the resize (and the program to subsequently freeze) the chat entry box will expand normally and I'll be able to continue typing, but I often forget to do that and end up killing the program.

Log entries from the time of the last crash attached.

Revision history for this message
in8sworld (n8berry) wrote :

I have to modify my last comment after some months of dealing with this issue. Adding extra lines does not always mitigate this problem for me under Ubuntu 22.04.1 LTS using pidgin 2.14.8.

Revision history for this message
Birgit Edel (biredel) wrote :

Confirming that building with upstream changes
https://reviews.imfreedom.org/r/1342/diff/10/
which are marked fixing upstream BUG
https://issues.imfreedom.org/issue/PIDGIN-17413
pidgin has not crashed for a few weeks.

tags: added: patch
description: updated
Changed in pidgin (Ubuntu):
status: Confirmed → Fix Released
Changed in pidgin (Ubuntu Jammy):
status: New → In Progress
assignee: nobody → Julian Andres Klode (juliank)
importance: Undecided → High
Revision history for this message
Julian Andres Klode (juliank) wrote :

I have cherry-picked the patch into https://launchpad.net/~juliank/+archive/ubuntu/pidgin and plan to upload it pending validation.

Revision history for this message
Julian Andres Klode (juliank) wrote :

Uploaded (yesterday already)

Changed in pidgin (Ubuntu Jammy):
status: In Progress → Fix Committed
Revision history for this message
Robie Basak (racb) wrote : Please test proposed package

Hello Paul, or anyone else affected,

Accepted pidgin into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/pidgin/1:2.14.8-1ubuntu2.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

tags: added: verification-needed verification-needed-jammy
Revision history for this message
Jonas Gorski (kanjimonster) wrote :

Grah, why did you version it the same as the one I used for my own build - I fully expected it to become ubuntu3, not ubuntu2.1 ;P (apt kept trying to reinstall the official one with the unmodified version ...).

I hope I correctly "upgraded" to the proposed version, will report back if I find it doesn't work for me (though I have been running with the same fix for months now without any issues).

Thanks for taking care of it!

Revision history for this message
Birgit Edel (biredel) wrote :

Thanks, seems to work. Unsurprisingly so: your binary is almost identical to my local build.

@kanjimonster You can append a distinct suffix for your local builds using this dch option:
<email address hidden> dch --local="+test" "my commit message"
You can verify how your build compares to ubuntu versions using this dpkg option:
dpkg --compare-versions oldversion+local1 ge oldversion.1 && echo "greater or equal"

tags: added: verification-done-jammy
removed: verification-needed-jammy
Revision history for this message
Robie Basak (racb) wrote : Update Released

The verification of the Stable Release Update for pidgin has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package pidgin - 1:2.14.8-1ubuntu2.1

---------------
pidgin (1:2.14.8-1ubuntu2.1) jammy; urgency=medium

  * Fix freezes when creating long message or resizing window (LP: #1975519)

 -- Julian Andres Klode <email address hidden> Tue, 11 Jul 2023 18:56:57 +0200

Changed in pidgin (Ubuntu Jammy):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.