Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 53672 - GAIM segfaults when pasting certain text into a message window.
Summary: GAIM segfaults when pasting certain text into a message window.
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High minor (vote)
Assignee: Gaim Bugs Crew
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-06-11 13:57 UTC by Devin Kennedy
Modified: 2004-06-14 20:22 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
backtrace (bt.txt,1.92 KB, text/plain)
2004-06-11 13:59 UTC, Devin Kennedy
Details
better backtrace (bt.txt,2.06 KB, text/plain)
2004-06-14 16:50 UTC, Devin Kennedy
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Devin Kennedy 2004-06-11 13:57:18 UTC
Copying this text from http://65.68.55.12/inetpub/ftproot/micron_specs.htm
 MB:
    MicronPC model: MBD001137-xx from GVC model: AR862
    Manufactured for GVC by BCM Advanced Research as their model GT133KT => Go HERE for more Info

and pasting into the message window causes a segfault.  This only occurs when I'm copying it from Firefox 0.8 to GAIM. (Must be something with the new RTF support, I'm thinking, since text-only has no effect.)

Reproducible: Always
Steps to Reproduce:
1. Navigate to http://65.68.55.12/inetpub/ftproot/micron_specs.htm in Mozilla Firefox 0.8.
2. Run GAIM, log in, pull up a chat window.
3. Select the text from "MB:" to "Info" in Firefox, and copy it.
4. Paste into GAIM chat window.

Actual Results:  
GAIM segfaults

Expected Results:  
The text from the website as copied to the clipboard should have showed up in
the message window after pasting.

Portage 2.0.50-r7 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040420-r0, 2.6.6)
=================================================================
System uname: 2.6.6 i686 Intel(R) Pentium(R) 4 CPU 3.06GHz
Gentoo Base System version 1.4.10
distcc 2.14 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium3 -O3 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config
/usr/share/config /usr/share/texmf/dvipdfm/config/
/usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
/usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium3 -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo
http://mirror.datapipe.net/gentoo ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo
http://gentoo.eliteitminds.com"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://192.168.0.1/gentoo-portage"
USE="X alsa apm arts avi berkdb bonobo cdr crypt cups encode esd foomaticdb gdbm
ggi gif gnome gpm gtk gtk2 guile imlib java jpeg kde ldap libg++ libwww mad
mikmod mmx motif mozilla mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib
perl png python qt quicktime readline ruby sdl slang spell sse ssl svga tcltk
tcpd tetex truetype x86 xinerama xml2 xmms xv zlib"
Comment 1 Devin Kennedy 2004-06-11 13:59:24 UTC
Created attachment 33103 [details]
backtrace
Comment 2 Eric Brown 2004-06-11 14:01:19 UTC
it also segfaults if you use tab completion in irc sometimes.. and when you try to use other languages :D
Comment 3 Devin Kennedy 2004-06-11 14:02:25 UTC
I should add that this is GAIM version 0.78.
Comment 4 Michael Kohl (RETIRED) gentoo-dev 2004-06-11 14:16:33 UTC
Sounds more like bugs upstream should be concernded about, don't you think? 

http://sourceforge.net/tracker/?func=add&group_id=235&atid=100235
Comment 5 Don Seiler (RETIRED) gentoo-dev 2004-06-14 10:27:23 UTC
Eric don't just comment off-topic.

Devin I believe that bug is already patched in gaim-0.78-r2.  Are you using that version?
Comment 6 Devin Kennedy 2004-06-14 16:49:09 UTC
Just tried it with gaim-0.78-r2, and it's still segfaulting.  However, I built with USE="debug" this time, and have attached a new backtrace.  Glancing at their code (gtkimhtml.c:2353), it doesn't appear to be checking for a null pointer before it calls strcpy to see if new font information is different than the old font information... Simply adding a null-pointer check to the offending if statement, so that it reads:

    if (font->fore && (!oldfont->fore || strcmp(font->fore, oldfont->fore) != 0))

Actually stops the segfaulting and lets me paste the text into the window.  However, I'm not sure whether or not font->fore is supposed to be NULL.  Or rather, whether or not the design of their HTML parser is such that they intended for it to be a possibility.  I'd think that they'd have put a check in if that were the case.  Thoughts?
Comment 7 Devin Kennedy 2004-06-14 16:50:58 UTC
Created attachment 33256 [details]
better backtrace
Comment 8 Devin Kennedy 2004-06-14 17:22:17 UTC
Er, I meant strcmp in comment #6.  Sorry.
Comment 9 Don Seiler (RETIRED) gentoo-dev 2004-06-14 19:49:34 UTC
I've written a patch and submitted it here:

http://sourceforge.net/tracker/index.php?func=detail&aid=972936&group_id=235&atid=300235

Unless I've done something dumb marv will be merging it in tonight perhaps.  I'm working on -r3 to include it.

I'm trying to duplicate your crash but can't.  Do you set your fore/back colors?
Comment 10 Devin Kennedy 2004-06-14 20:18:18 UTC
Are you pasting from the page itself?  It looks like whoever made the page was using a web editor that generates spastic HTML output, which is probably why GAIM was having trouble with it, multiple font tags and stuff... Here's the particular HTML segment:

<div>
      <font face="Arial" size="2"><span class="580470516-30032001"><strong>MB:</strong></span></font>
    </div>
    <div>
      <span class="580470516-30032001"><font face="Arial" size="2"><span><strong>&nbsp;&nbsp;&nbsp;

      </strong></span>MicronPC model: MBD001137-xx from </font></span></font></font><span class="580470516-30032001"><font color="#000000"><font face="Arial" size="2">GVC
    model: AR862</font></font></span></span><font color="#000000"><span class="520133915-02042001"><font color="#0000ff">
  </div>
Comment 11 Don Seiler (RETIRED) gentoo-dev 2004-06-14 20:22:28 UTC
My patch was just merged into gaim CVS.

I just committed gaim-0.78-r3 with that patch.  Should show up on rsync mirrors within 30 minutes.

Thanks!